From f562e159e86cde0ed74ca60ee3d355418cb4a72a Mon Sep 17 00:00:00 2001 From: Jack251970 <1160210343@qq.com> Date: Fri, 18 Jul 2025 15:26:07 +0800 Subject: [PATCH] Add update dialog --- Flow.Launcher/App.xaml.cs | 18 ++- Flow.Launcher/Languages/en.xaml | 5 + Flow.Launcher/PluginUpdateWindow.xaml | 105 ++++++++++++++++++ Flow.Launcher/PluginUpdateWindow.xaml.cs | 85 ++++++++++++++ .../SettingsPanePluginStoreViewModel.cs | 10 +- 5 files changed, 220 insertions(+), 3 deletions(-) create mode 100644 Flow.Launcher/PluginUpdateWindow.xaml create mode 100644 Flow.Launcher/PluginUpdateWindow.xaml.cs diff --git a/Flow.Launcher/App.xaml.cs b/Flow.Launcher/App.xaml.cs index 7e3915b2b..1bef1166e 100644 --- a/Flow.Launcher/App.xaml.cs +++ b/Flow.Launcher/App.xaml.cs @@ -298,11 +298,25 @@ namespace Flow.Launcher { // check plugin updates every 5 hour var timer = new PeriodicTimer(TimeSpan.FromHours(5)); - await PluginInstaller.CheckForPluginUpdatesAsync(); + await PluginInstaller.CheckForPluginUpdatesAsync((plugins) => + { + Current.Dispatcher.Invoke(() => + { + var pluginUpdateWindow = new PluginUpdateWindow(plugins); + pluginUpdateWindow.ShowDialog(); + }); + }); while (await timer.WaitForNextTickAsync()) // check updates on startup - await PluginInstaller.CheckForPluginUpdatesAsync(); + await PluginInstaller.CheckForPluginUpdatesAsync((plugins) => + { + Current.Dispatcher.Invoke(() => + { + var pluginUpdateWindow = new PluginUpdateWindow(plugins); + pluginUpdateWindow.ShowDialog(); + }); + }); } }); } diff --git a/Flow.Launcher/Languages/en.xaml b/Flow.Launcher/Languages/en.xaml index a7328f1b8..ac58fdc5f 100644 --- a/Flow.Launcher/Languages/en.xaml +++ b/Flow.Launcher/Languages/en.xaml @@ -564,6 +564,11 @@ Update files Update description + + Restart Flow Launcher after updating plugins + {0}: Update from v{1} to v{2} + No plugin selected + Skip Welcome to Flow Launcher diff --git a/Flow.Launcher/PluginUpdateWindow.xaml b/Flow.Launcher/PluginUpdateWindow.xaml new file mode 100644 index 000000000..eb7e2219d --- /dev/null +++ b/Flow.Launcher/PluginUpdateWindow.xaml @@ -0,0 +1,105 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +