private void NextSlide()
{
Task.Factory.StartNew( () =>
{
if (Model.MediaList.Count == 0)
{
BeginEnumerate();
}
else
{
if (State != DriverState.Stopped)
{
if (State == DriverState.Paused)
{
SetupTimer();
}
ResetTimer();
if (_recentIndex.HasValue)
{
++_recentIndex;
if (_recentIndex < _recent.Count)
{
ShowImage(_recent[_recentIndex.Value]);
}
else
{
_recentIndex = null;
}
}
if (!_recentIndex.HasValue)
{
ShowImage(NextRandom());
}
}
}
});
}