From 8864da7a75d2b60cfe96cbf11292f20762b33a17 Mon Sep 17 00:00:00 2001 From: Brian Bicknell Date: Fri, 31 Jul 2026 09:03:00 -0400 Subject: [PATCH] Scroll to top of the playlist on playlist change. --- Harmonia.WinUI/Views/PlaylistDetailView.xaml.cs | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/Harmonia.WinUI/Views/PlaylistDetailView.xaml.cs b/Harmonia.WinUI/Views/PlaylistDetailView.xaml.cs index 5289105..7b024d0 100644 --- a/Harmonia.WinUI/Views/PlaylistDetailView.xaml.cs +++ b/Harmonia.WinUI/Views/PlaylistDetailView.xaml.cs @@ -58,6 +58,22 @@ public sealed partial class PlaylistDetailView : UserControl UpdateListViewItemStyle(listViewItem, true); } + else if (e.PropertyName == nameof(_viewModel.Playlist)) + { + ScrollToTop(); + } + } + + private void ScrollToTop() + { + if (PlaylistListView.FindDescendant() is ScrollViewer scrollViewer) + { + scrollViewer.ChangeView(null, 0, null, disableAnimation: false); + } + else if (_viewModel.FilteredPlaylistSongs.FirstOrDefault() is PlaylistSong firstSong) + { + PlaylistListView.ScrollIntoView(firstSong); + } } private void UpdateListViewItemStyle(FrameworkElement listViewItem, bool isPlaying)