Esempio n. 1
0
        private void PlayerOnPlaybackStopped(object sender, StoppedEventArgs e)
        {
            Logger.Debug("Playback stopped");

            if (PlaybackState != PlaybackState.Playing)
            {
                return;
            }

            if (_currentPlaylist == PlaylistModel.Null)
            {
                PlaybackState = PlaybackState.Stopped;
                return;
            }

            var result = _currentPlaylist.GetNextTrack();

            if (!result.IsSuccess)
            {
                Logger.Debug("No next track available");

                PlaybackState = PlaybackState.Stopped;
                _currentPlaylist.CurrentTrack = TrackModel.Null;
                _currentPlaylist = PlaylistModel.Null;

                return;
            }

            Play(_currentPlaylist, result.Data);
        }