From 0ddeaef126c95e5223791f350e91bce80452b299 Mon Sep 17 00:00:00 2001 From: Zhe Fang Date: Sun, 7 Dec 2025 17:26:41 -0500 Subject: [PATCH] fix: auto play only be valid when first opening gallery window --- .../ViewModels/MusicGalleryPageViewModel.cs | 5 ----- .../BetterLyrics.WinUI3/Views/MusicGalleryPage.xaml.cs | 6 ++++++ 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/BetterLyrics.WinUI3/BetterLyrics.WinUI3/ViewModels/MusicGalleryPageViewModel.cs b/BetterLyrics.WinUI3/BetterLyrics.WinUI3/ViewModels/MusicGalleryPageViewModel.cs index 2e09419..411e321 100644 --- a/BetterLyrics.WinUI3/BetterLyrics.WinUI3/ViewModels/MusicGalleryPageViewModel.cs +++ b/BetterLyrics.WinUI3/BetterLyrics.WinUI3/ViewModels/MusicGalleryPageViewModel.cs @@ -130,11 +130,6 @@ namespace BetterLyrics.WinUI3.ViewModels _libWatcherService = libWatcherService; _libWatcherService.MusicLibraryFilesChanged += LibWatcherService_MusicLibraryFilesChanged; - - if (AppSettings.MusicGallerySettings.AutoPlay) - { - _ = PlayTrackAtAsync(AppSettings.MusicGallerySettings.PlayQueueIndex); - } } private void TrackPlayingQueue_CollectionChanged(object? sender, System.Collections.Specialized.NotifyCollectionChangedEventArgs e) diff --git a/BetterLyrics.WinUI3/BetterLyrics.WinUI3/Views/MusicGalleryPage.xaml.cs b/BetterLyrics.WinUI3/BetterLyrics.WinUI3/Views/MusicGalleryPage.xaml.cs index c922f90..a94d679 100644 --- a/BetterLyrics.WinUI3/BetterLyrics.WinUI3/Views/MusicGalleryPage.xaml.cs +++ b/BetterLyrics.WinUI3/BetterLyrics.WinUI3/Views/MusicGalleryPage.xaml.cs @@ -178,6 +178,7 @@ namespace BetterLyrics.WinUI3.Views private void Page_Unloaded(object sender, RoutedEventArgs e) { ViewModel.CancelRefreshSongs(); + ViewModel.StopTrackCommand.Execute(null); } private void PlaylistFavButton_Click(object sender, RoutedEventArgs e) @@ -270,6 +271,11 @@ namespace BetterLyrics.WinUI3.Views private void Page_Loaded(object sender, RoutedEventArgs e) { + var settings = ViewModel.AppSettings.MusicGallerySettings; + if (settings.AutoPlay) + { + _ = ViewModel.PlayTrackAtAsync(settings.PlayQueueIndex); + } ScrollToPlayingItem(); }