public async Task Shuffle() { if (IsShuffled) { NonShuffledPlaylist = new ObservableCollection <IVLCMedia>(Playlist); Random r = new Random(); for (int i = 0; i < Playlist.Count; i++) { if (i > CurrentTrack) { int index1 = r.Next(i, Playlist.Count); int index2 = r.Next(i, Playlist.Count); Playlist.Move(index1, index2); } } } else { await SetPlaylist(Locator.MediaPlaybackViewModel.TrackCollection.NonShuffledPlaylist); } await App.BackgroundAudioHelper.ResetCollection(ResetType.ShuffleReset); var backgorundTracks = BackgroundTaskTools.CreateBackgroundTrackItemList(Playlist.ToTrackItemPlaylist()); await App.BackgroundAudioHelper.AddToPlaylist(backgorundTracks); }
public async Task SetPlaylist(ObservableCollection <IVLCMedia> playlist) { await App.Dispatcher.RunAsync(CoreDispatcherPriority.Normal, () => Playlist = playlist); var backgroundTracks = BackgroundTaskTools.CreateBackgroundTrackItemList(Locator.MediaPlaybackViewModel.TrackCollection.Playlist.ToTrackItemPlaylist()); await App.BackgroundAudioHelper.AddToPlaylist(backgroundTracks); }
public async Task Add(List <TrackItem> trackItems) { foreach (var track in trackItems) { track.Index = (uint)Playlist.Count; Playlist.Add(track); } var backgroundTracks = BackgroundTaskTools.CreateBackgroundTrackItemList(trackItems); await App.BackgroundAudioHelper.AddToPlaylist(backgroundTracks); }