From c640b9ffa39f96bbcc04f7ebfdde0ab57184ecf4 Mon Sep 17 00:00:00 2001 From: GabrielDuf Date: Wed, 20 May 2026 11:20:26 -0400 Subject: [PATCH 1/3] improve avalonia ui --- src/UniGetUI.Avalonia/App.axaml.cs | 15 -- .../Assets/Styles/Styles.Common.axaml | 147 ++++++++++++ .../Assets/Styles/Styles.Linux.axaml | 81 ------- .../Assets/Styles/Styles.Windows.axaml | 87 ------- .../Assets/Styles/Styles.macOS.axaml | 83 ------- .../Models/PackageCollections.cs | 34 +++ .../ViewModels/MainWindowViewModel.cs | 8 + .../SoftwarePages/PackagesPageViewModel.cs | 67 +++++- .../Controls/Settings/CheckboxButtonCard.cs | 30 ++- .../Views/Controls/Settings/CheckboxCard.cs | 35 ++- .../Controls/Settings/SecureCheckboxCard.cs | 26 ++- src/UniGetUI.Avalonia/Views/MainWindow.axaml | 11 +- .../SoftwarePages/AbstractPackagesPage.axaml | 215 +++++++++++++++--- .../AbstractPackagesPage.axaml.cs | 3 + 14 files changed, 519 insertions(+), 323 deletions(-) delete mode 100644 src/UniGetUI.Avalonia/Assets/Styles/Styles.Linux.axaml delete mode 100644 src/UniGetUI.Avalonia/Assets/Styles/Styles.Windows.axaml delete mode 100644 src/UniGetUI.Avalonia/Assets/Styles/Styles.macOS.axaml diff --git a/src/UniGetUI.Avalonia/App.axaml.cs b/src/UniGetUI.Avalonia/App.axaml.cs index 52ca50067..6abd79e4e 100644 --- a/src/UniGetUI.Avalonia/App.axaml.cs +++ b/src/UniGetUI.Avalonia/App.axaml.cs @@ -1,10 +1,8 @@ using System.Diagnostics; -using System.Diagnostics.CodeAnalysis; using System.IO; using Avalonia; using Avalonia.Controls.ApplicationLifetimes; using Avalonia.Markup.Xaml; -using Avalonia.Markup.Xaml.Styling; using Avalonia.Platform; using Avalonia.Styling; using Avalonia.Threading; @@ -23,25 +21,12 @@ namespace UniGetUI.Avalonia; public partial class App : Application { - [UnconditionalSuppressMessage( - "Trimming", - "IL2026", - Justification = "Platform theme dictionaries are Avalonia resources included in the app package; only the resource URI is selected dynamically.")] public override void Initialize() { AvaloniaXamlLoader.Load(this); #if AVALONIA_DIAGNOSTICS_ENABLED this.AttachDeveloperTools(); #endif - - string platform = OperatingSystem.IsWindows() ? "Windows" - : OperatingSystem.IsMacOS() ? "macOS" - : "Linux"; - - Styles.Add(new StyleInclude(new Uri("avares://UniGetUI.Avalonia/")) - { - Source = new Uri($"avares://UniGetUI.Avalonia/Assets/Styles/Styles.{platform}.axaml") - }); } public override void OnFrameworkInitializationCompleted() diff --git a/src/UniGetUI.Avalonia/Assets/Styles/Styles.Common.axaml b/src/UniGetUI.Avalonia/Assets/Styles/Styles.Common.axaml index d8c151aca..3e5f04a7d 100644 --- a/src/UniGetUI.Avalonia/Assets/Styles/Styles.Common.axaml +++ b/src/UniGetUI.Avalonia/Assets/Styles/Styles.Common.axaml @@ -2,8 +2,155 @@ xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:controls="using:UniGetUI.Avalonia.Views.Controls"> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + + @@ -96,17 +99,50 @@ ColumnSpacing="4" Margin="0"> - + - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -115,12 +151,12 @@ @@ -209,7 +250,8 @@ Padding="2" Background="Transparent" BorderThickness="0"> - + - + VerticalAlignment="Center"> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + IsVisible="{Binding IsExpanded}" + Margin="24,0,0,0"> + GridLinesVisibility="None"> @@ -693,7 +810,10 @@ - + @@ -703,7 +823,7 @@ VerticalAlignment="Center">