diff --git a/GenshinLyreMidiPlayer.WPF/GenshinLyreMidiPlayer.WPF.csproj b/GenshinLyreMidiPlayer.WPF/GenshinLyreMidiPlayer.WPF.csproj
index 337e986..2511257 100644
--- a/GenshinLyreMidiPlayer.WPF/GenshinLyreMidiPlayer.WPF.csproj
+++ b/GenshinLyreMidiPlayer.WPF/GenshinLyreMidiPlayer.WPF.csproj
@@ -6,7 +6,7 @@
true
GenshinLyreMidiPlayer.WPF.App
app.manifest
- 2.1.0.1
+ 2.2.0
item_windsong_lyre.ico
enable
https://github.com/sabihoshi/GenshinLyreMidiPlayer
diff --git a/GenshinLyreMidiPlayer.WPF/ViewModels/MainWindowViewModel.cs b/GenshinLyreMidiPlayer.WPF/ViewModels/MainWindowViewModel.cs
index 23bef16..b6837cd 100644
--- a/GenshinLyreMidiPlayer.WPF/ViewModels/MainWindowViewModel.cs
+++ b/GenshinLyreMidiPlayer.WPF/ViewModels/MainWindowViewModel.cs
@@ -1,7 +1,8 @@
-using System.Collections.Generic;
+using System.Collections.Generic;
using System.Linq;
using GenshinLyreMidiPlayer.Data;
using GenshinLyreMidiPlayer.WPF.Views;
+using ModernWpf;
using ModernWpf.Controls;
using Stylet;
using StyletIoC;
@@ -41,7 +42,7 @@ protected override async void OnViewLoaded()
// Work around because events do not conform to the signatures Stylet supports
_navView = ((MainWindowView) View).NavView;
- _navView.AutoSuggestBox.TextChanged += PlaylistView.OnFilterTextChanged;
+ _navView.AutoSuggestBox.TextChanged += AutoSuggestBoxOnTextChanged;
_navView.SelectionChanged += Navigate;
_navView.BackRequested += NavigateBack;
@@ -59,6 +60,19 @@ protected override async void OnViewLoaded()
await PlaylistView.AddFiles(db.History.Select(midi => midi.Path));
}
+ private void AutoSuggestBoxOnTextChanged(AutoSuggestBox sender, AutoSuggestBoxTextChangedEventArgs e)
+ {
+ PlaylistView.OnFilterTextChanged(sender, e);
+ if (ActiveItem != PlaylistView)
+ {
+ var playlist = (NavigationViewItem) _navView.MenuItems
+ .Cast()
+ .First(nav => nav.Tag == PlaylistView);
+
+ _navView.SelectedItem = playlist;
+ }
+ }
+
private void NavigateBack(NavigationView sender, NavigationViewBackRequestedEventArgs args)
{
GoBack();