mirror of
https://github.com/Flow-Launcher/Flow.Launcher.git
synced 2026-03-11 08:54:32 +00:00
Fix MainWindow startup visibility and OpenSettings logic
- Delay setting desktop.MainWindow until plugins are initialized to prevent auto-show on startup - Restore missing Hide() method in MainViewModel - Fix Show() method which was incorrectly calling HideRequested - Ensure OpenSettings cleanly hides MainWindow before showing SettingsWindow
This commit is contained in:
parent
32aa3ffdc5
commit
d9bfe4995f
1 changed files with 8 additions and 1 deletions
|
|
@ -25,6 +25,7 @@ public partial class App : Application
|
|||
private static readonly string ClassName = nameof(App);
|
||||
private Settings? _settings;
|
||||
private MainViewModel? _mainVM;
|
||||
private MainWindow? _mainWindow;
|
||||
|
||||
public static IPublicAPI? API { get; private set; }
|
||||
|
||||
|
|
@ -44,7 +45,8 @@ public partial class App : Application
|
|||
API = Ioc.Default.GetRequiredService<IPublicAPI>();
|
||||
_mainVM = Ioc.Default.GetRequiredService<MainViewModel>();
|
||||
|
||||
desktop.MainWindow = new MainWindow();
|
||||
_mainWindow = new MainWindow();
|
||||
// desktop.MainWindow = _mainWindow; // Prevent auto-show on startup
|
||||
desktop.ShutdownMode = ShutdownMode.OnExplicitShutdown;
|
||||
|
||||
// Initialize hotkeys after window is created
|
||||
|
|
@ -131,6 +133,11 @@ public partial class App : Application
|
|||
var i18n = Ioc.Default.GetRequiredService<Internationalization>();
|
||||
i18n.UpdatePluginMetadataTranslations();
|
||||
|
||||
if (ApplicationLifetime is IClassicDesktopStyleApplicationLifetime desktop)
|
||||
{
|
||||
desktop.MainWindow = _mainWindow;
|
||||
}
|
||||
|
||||
_mainVM?.OnPluginsReady();
|
||||
}
|
||||
catch (Exception e) { Log.Exception(ClassName, "Plugin init failed", e); }
|
||||
|
|
|
|||
Loading…
Reference in a new issue