From 499a1bd4899c95d32f7cc4de196c9fa4227b668b Mon Sep 17 00:00:00 2001 From: Gabriel Dufresne Date: Tue, 26 May 2026 09:41:35 -0400 Subject: [PATCH 1/3] add new splashscreen png --- src/UniGetUI.Avalonia/App.axaml.cs | 90 ++++++++++++------ .../UniGetUI.Avalonia.csproj | 5 + .../Views/SplashWindow.axaml | 24 +++++ .../Views/SplashWindow.axaml.cs | 22 +++++ src/UniGetUI/Assets/SplashScreen.png | Bin 16382 -> 13441 bytes .../Assets/SplashScreen.theme-dark.png | Bin 0 -> 11901 bytes 6 files changed, 114 insertions(+), 27 deletions(-) create mode 100644 src/UniGetUI.Avalonia/Views/SplashWindow.axaml create mode 100644 src/UniGetUI.Avalonia/Views/SplashWindow.axaml.cs create mode 100644 src/UniGetUI/Assets/SplashScreen.theme-dark.png diff --git a/src/UniGetUI.Avalonia/App.axaml.cs b/src/UniGetUI.Avalonia/App.axaml.cs index 6abd79e4ee..67ec82f6f1 100644 --- a/src/UniGetUI.Avalonia/App.axaml.cs +++ b/src/UniGetUI.Avalonia/App.axaml.cs @@ -54,42 +54,78 @@ public override void OnFrameworkInitializationCompleted() if (ApplicationLifetime is IClassicDesktopStyleApplicationLifetime desktop) { - if (OperatingSystem.IsMacOS()) + // Apply the saved theme before any window is shown so the splash + // appears in the user's preferred light/dark variant from the start. + ApplyTheme(CoreSettings.GetValue(CoreSettings.K.PreferredTheme)); + + // Show the splash before any heavy initialization. Skipped in daemon + // mode since the app isn't supposed to be visible at all. + SplashWindow? splash = null; + if (!CoreData.WasDaemon) { - ProcessEnvironmentConfigurator.PrepareForCurrentPlatform(); - using var stream = AssetLoader.Open(new Uri("avares://UniGetUI.Avalonia/Assets/icon.png")); - using var ms = new MemoryStream(); - stream.CopyTo(ms); - MacOsNotificationBridge.SetDockIcon(ms.ToArray()); + splash = new SplashWindow(); + splash.Show(); } - else + + // Defer the rest of startup so the splash gets a chance to paint + // before we block the UI thread loading package managers and the + // main window XAML. Without this the splash window appears empty + // until init completes, defeating its purpose. + Dispatcher.UIThread.Post(() => StartMainWindow(desktop, splash), DispatcherPriority.Background); + } + + base.OnFrameworkInitializationCompleted(); + } + + private static void StartMainWindow(IClassicDesktopStyleApplicationLifetime desktop, SplashWindow? splash) + { + if (OperatingSystem.IsMacOS()) + { + ProcessEnvironmentConfigurator.PrepareForCurrentPlatform(); + using var stream = AssetLoader.Open(new Uri("avares://UniGetUI.Avalonia/Assets/icon.png")); + using var ms = new MemoryStream(); + stream.CopyTo(ms); + MacOsNotificationBridge.SetDockIcon(ms.ToArray()); + } + else + { + ProcessEnvironmentConfigurator.ApplyProxySettingsToProcess(); + } + PEInterface.LoadLoaders(); + var mainWindow = new MainWindow(); + desktop.MainWindow = mainWindow; + AvaloniaAppHost.SecondaryInstanceArgsReceived += args => + HandleSecondaryInstanceArgs(mainWindow, args); + + if (CoreData.WasDaemon) + { + // Start silently: hide the window on first open only. + // Opened fires on every Show() in Avalonia, so we must unsubscribe + // immediately or every ShowFromTray() call would hide the window again. + void HideOnce(object? s, EventArgs e) { - ProcessEnvironmentConfigurator.ApplyProxySettingsToProcess(); + mainWindow.Opened -= HideOnce; + mainWindow.Hide(); } - PEInterface.LoadLoaders(); - ApplyTheme(CoreSettings.GetValue(CoreSettings.K.PreferredTheme)); - var mainWindow = new MainWindow(); - desktop.MainWindow = mainWindow; - AvaloniaAppHost.SecondaryInstanceArgsReceived += args => - HandleSecondaryInstanceArgs(mainWindow, args); + mainWindow.Opened += HideOnce; + } - if (CoreData.WasDaemon) + if (splash is not null) + { + var splashRef = splash; + void CloseSplashOnce(object? s, EventArgs e) { - // Start silently: hide the window on first open only. - // Opened fires on every Show() in Avalonia, so we must unsubscribe - // immediately or every ShowFromTray() call would hide the window again. - void HideOnce(object? s, EventArgs e) - { - mainWindow.Opened -= HideOnce; - mainWindow.Hide(); - } - mainWindow.Opened += HideOnce; + mainWindow.Opened -= CloseSplashOnce; + splashRef.Close(); } - - _ = StartupAsync(mainWindow); + mainWindow.Opened += CloseSplashOnce; } - base.OnFrameworkInitializationCompleted(); + // Framework auto-show already passed (we deferred via Dispatcher.Post), + // so we have to open the window ourselves. + mainWindow.Show(); + + _ = StartupAsync(mainWindow); } private static async Task StartupAsync(MainWindow mainWindow) diff --git a/src/UniGetUI.Avalonia/UniGetUI.Avalonia.csproj b/src/UniGetUI.Avalonia/UniGetUI.Avalonia.csproj index 2514a337f6..d4a084aa27 100644 --- a/src/UniGetUI.Avalonia/UniGetUI.Avalonia.csproj +++ b/src/UniGetUI.Avalonia/UniGetUI.Avalonia.csproj @@ -122,6 +122,8 @@ + + @@ -177,6 +179,9 @@ MainWindow.axaml + + SplashWindow.axaml + AbstractPackagesPage.axaml diff --git a/src/UniGetUI.Avalonia/Views/SplashWindow.axaml b/src/UniGetUI.Avalonia/Views/SplashWindow.axaml new file mode 100644 index 0000000000..067b760a61 --- /dev/null +++ b/src/UniGetUI.Avalonia/Views/SplashWindow.axaml @@ -0,0 +1,24 @@ + + + + + diff --git a/src/UniGetUI.Avalonia/Views/SplashWindow.axaml.cs b/src/UniGetUI.Avalonia/Views/SplashWindow.axaml.cs new file mode 100644 index 0000000000..7afc9dabbb --- /dev/null +++ b/src/UniGetUI.Avalonia/Views/SplashWindow.axaml.cs @@ -0,0 +1,22 @@ +using System; +using Avalonia; +using Avalonia.Controls; +using Avalonia.Media.Imaging; +using Avalonia.Platform; +using Avalonia.Styling; + +namespace UniGetUI.Avalonia.Views; + +public partial class SplashWindow : Window +{ + public SplashWindow() + { + InitializeComponent(); + + bool isDark = Application.Current?.ActualThemeVariant == ThemeVariant.Dark; + string uri = isDark + ? "avares://UniGetUI.Avalonia/Assets/SplashScreen.theme-dark.png" + : "avares://UniGetUI.Avalonia/Assets/SplashScreen.png"; + SplashImage.Source = new Bitmap(AssetLoader.Open(new Uri(uri))); + } +} diff --git a/src/UniGetUI/Assets/SplashScreen.png b/src/UniGetUI/Assets/SplashScreen.png index cc079c3c6f92e2c2c94caa37f976b886c6c5cc96..d4626ddd0e912cff306bb75b66dab6608a060d73 100644 GIT binary patch literal 13441 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 @&$|2YRvjKSvLaY;JXPbaBF5PBzTxq}zk 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 wsBt)RwBg)#@$_+rzj^Qrg;>{L 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 Date: Tue, 26 May 2026 09:42:11 -0400 Subject: [PATCH 2/3] fix button misaligned --- .../Views/SoftwarePages/AbstractPackagesPage.axaml | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/src/UniGetUI.Avalonia/Views/SoftwarePages/AbstractPackagesPage.axaml b/src/UniGetUI.Avalonia/Views/SoftwarePages/AbstractPackagesPage.axaml index a5ac09b29a..b19a854cb9 100644 --- a/src/UniGetUI.Avalonia/Views/SoftwarePages/AbstractPackagesPage.axaml +++ b/src/UniGetUI.Avalonia/Views/SoftwarePages/AbstractPackagesPage.axaml @@ -605,14 +605,17 @@ + HorizontalAlignment="Center" + Padding="0"/> @@ -651,7 +654,9 @@ VerticalAlignment="Top" Background="Transparent" BorderThickness="0" automation:AutomationProperties.Name="{t:Translate More options}"> - + Date: Tue, 26 May 2026 09:54:16 -0400 Subject: [PATCH 3/3] Fix mega query --- src/UniGetUI.Avalonia/Views/MainWindow.axaml | 72 ++++++++++--------- .../SoftwarePages/AbstractPackagesPage.axaml | 57 +++++++++------ 2 files changed, 75 insertions(+), 54 deletions(-) diff --git a/src/UniGetUI.Avalonia/Views/MainWindow.axaml b/src/UniGetUI.Avalonia/Views/MainWindow.axaml index 4044c15d89..1c30bde762 100644 --- a/src/UniGetUI.Avalonia/Views/MainWindow.axaml +++ b/src/UniGetUI.Avalonia/Views/MainWindow.axaml @@ -331,38 +331,46 @@ - - - - + + + + + + diff --git a/src/UniGetUI.Avalonia/Views/SoftwarePages/AbstractPackagesPage.axaml b/src/UniGetUI.Avalonia/Views/SoftwarePages/AbstractPackagesPage.axaml index b19a854cb9..da41f7a75f 100644 --- a/src/UniGetUI.Avalonia/Views/SoftwarePages/AbstractPackagesPage.axaml +++ b/src/UniGetUI.Avalonia/Views/SoftwarePages/AbstractPackagesPage.axaml @@ -717,28 +717,41 @@ IsVisible="{Binding MegaQueryVisible}" RowDefinitions="*,64,*" ColumnDefinitions="*,8*,64,*"> - - + + + + + + +