Added playing song view. Adding styling to playing song. Fixed caching cancellation issue.
This commit is contained in:
@@ -6,9 +6,9 @@ using Harmonia.Core.Playlists;
|
||||
using Harmonia.Core.Scanner;
|
||||
using Harmonia.WinUI.Caching;
|
||||
using Harmonia.WinUI.Storage;
|
||||
using Microsoft.UI.Dispatching;
|
||||
using Microsoft.UI.Xaml.Media.Imaging;
|
||||
using System;
|
||||
using System.Collections;
|
||||
using System.Collections.Concurrent;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.ObjectModel;
|
||||
@@ -20,8 +20,8 @@ using System.Threading;
|
||||
using System.Threading.Tasks;
|
||||
using System.Timers;
|
||||
using System.Windows.Input;
|
||||
using Windows.ApplicationModel.Contacts;
|
||||
using Windows.ApplicationModel.DataTransfer;
|
||||
using Windows.System;
|
||||
using DispatcherQueue = Microsoft.UI.Dispatching.DispatcherQueue;
|
||||
using Timer = System.Timers.Timer;
|
||||
|
||||
@@ -288,7 +288,38 @@ public partial class PlaylistViewModel : ViewModelBase
|
||||
return;
|
||||
|
||||
List<PlaylistSong> filteredPlaylistSongs = [.. Playlist.Songs.Where(playlistSong => IsFiltered(playlistSong.Song))];
|
||||
FilteredPlaylistSongs = [.. filteredPlaylistSongs];
|
||||
//FilteredPlaylistSongs = [.. filteredPlaylistSongs];
|
||||
|
||||
for (int i = FilteredPlaylistSongs.Count -1; i >= 0; i--)
|
||||
{
|
||||
PlaylistSong playlistSong = FilteredPlaylistSongs[i];
|
||||
|
||||
bool inPlaylist = Playlist.Songs.Contains(playlistSong);
|
||||
bool inFilter = filteredPlaylistSongs.Contains(playlistSong);
|
||||
|
||||
if (!inPlaylist || !inFilter)
|
||||
{
|
||||
FilteredPlaylistSongs.Remove(playlistSong);
|
||||
}
|
||||
}
|
||||
|
||||
int insertionIndex = 0;
|
||||
|
||||
foreach (PlaylistSong playlistSong in Playlist.Songs)
|
||||
{
|
||||
bool inFilter = filteredPlaylistSongs.Contains(playlistSong);
|
||||
bool inCurrentFilteredList = FilteredPlaylistSongs.Contains(playlistSong);
|
||||
|
||||
if (inFilter)
|
||||
{
|
||||
if (!inCurrentFilteredList)
|
||||
{
|
||||
FilteredPlaylistSongs.Insert(insertionIndex, playlistSong);
|
||||
}
|
||||
|
||||
insertionIndex++;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private bool IsFiltered(Song song)
|
||||
|
||||
Reference in New Issue
Block a user