From c09499172dc77800e812ec9ad7957975ce86794d Mon Sep 17 00:00:00 2001 From: maotovisk Date: Thu, 16 Jul 2026 10:19:00 -0300 Subject: [PATCH 1/8] chore(desktop): update avalonia to 12.1 --- MapWizard.Desktop/MapWizard.Desktop.csproj | 30 +++++++++++----------- MapWizard.Tests/MapWizard.Tests.csproj | 4 +-- MapWizard.Tools/MapWizard.Tools.csproj | 2 +- 3 files changed, 18 insertions(+), 18 deletions(-) diff --git a/MapWizard.Desktop/MapWizard.Desktop.csproj b/MapWizard.Desktop/MapWizard.Desktop.csproj index 5727297..7f45f9a 100644 --- a/MapWizard.Desktop/MapWizard.Desktop.csproj +++ b/MapWizard.Desktop/MapWizard.Desktop.csproj @@ -11,28 +11,28 @@ - - - + + + - - + + - - + + - - - - + + + + - - + + - - + + diff --git a/MapWizard.Tests/MapWizard.Tests.csproj b/MapWizard.Tests/MapWizard.Tests.csproj index 0980351..691ec4b 100644 --- a/MapWizard.Tests/MapWizard.Tests.csproj +++ b/MapWizard.Tests/MapWizard.Tests.csproj @@ -21,13 +21,13 @@ - + runtime; build; native; contentfiles; analyzers; buildtransitive all - + runtime; build; native; contentfiles; analyzers; buildtransitive all diff --git a/MapWizard.Tools/MapWizard.Tools.csproj b/MapWizard.Tools/MapWizard.Tools.csproj index e380e2a..52bc4f3 100644 --- a/MapWizard.Tools/MapWizard.Tools.csproj +++ b/MapWizard.Tools/MapWizard.Tools.csproj @@ -9,7 +9,7 @@ - + From befde0c000f560222814052b4ad0d63fbcfde238 Mon Sep 17 00:00:00 2001 From: maotovisk Date: Thu, 16 Jul 2026 10:19:25 -0300 Subject: [PATCH 2/8] fix: clipboard handling --- .../HitSoundVisualizerView.axaml.cs | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/MapWizard.Desktop/Views/HitSoundVisualizer/HitSoundVisualizerView.axaml.cs b/MapWizard.Desktop/Views/HitSoundVisualizer/HitSoundVisualizerView.axaml.cs index 86e4c8b..0ce4610 100644 --- a/MapWizard.Desktop/Views/HitSoundVisualizer/HitSoundVisualizerView.axaml.cs +++ b/MapWizard.Desktop/Views/HitSoundVisualizer/HitSoundVisualizerView.axaml.cs @@ -3,6 +3,7 @@ using System.Linq; using Avalonia.Controls; using Avalonia.Input; +using Avalonia.Input.Platform; using Avalonia.Threading; using Avalonia.VisualTree; using MapWizard.Desktop.ViewModels; @@ -118,12 +119,11 @@ private async void Root_OnKeyDown(object? sender, KeyEventArgs e) if (e.KeyModifiers.HasFlag(KeyModifiers.Control) && e.Key == Key.V) { var topLevel = TopLevel.GetTopLevel(this); - if (topLevel?.Clipboard is not null) - { - var text = await topLevel.Clipboard.GetTextAsync(); - vm.PastePointClipboardPayload(text); - e.Handled = true; - } + if (topLevel?.Clipboard is null) return; + + var text = await topLevel.Clipboard.TryGetTextAsync(); + vm.PastePointClipboardPayload(text); + e.Handled = true; return; } From 83b47052c0c62a717db964debe111e445f84e9ef Mon Sep 17 00:00:00 2001 From: maotovisk Date: Thu, 16 Jul 2026 10:19:33 -0300 Subject: [PATCH 3/8] fix: remove data validator plugin --- MapWizard.Desktop/App.axaml.cs | 2 -- 1 file changed, 2 deletions(-) diff --git a/MapWizard.Desktop/App.axaml.cs b/MapWizard.Desktop/App.axaml.cs index eab5be2..ba00bb2 100644 --- a/MapWizard.Desktop/App.axaml.cs +++ b/MapWizard.Desktop/App.axaml.cs @@ -1,6 +1,5 @@ using Avalonia; using Avalonia.Controls.ApplicationLifetimes; -using Avalonia.Data.Core.Plugins; using Avalonia.Markup.Xaml; using MapWizard.Desktop.DependencyInjection; using MapWizard.Desktop.Services; @@ -18,7 +17,6 @@ public override void Initialize() public override void OnFrameworkInitializationCompleted() { - BindingPlugins.DataValidators.RemoveAt(0); var collection = new ServiceCollection(); collection.AddCommonServices(); var services = collection.BuildServiceProvider(); From 98123e6d84d8407fadeae8cae2211b4065fc429c Mon Sep 17 00:00:00 2001 From: maotovisk Date: Thu, 16 Jul 2026 10:29:50 -0300 Subject: [PATCH 4/8] refactor(desktop): update data binding and drag-drop logic --- MapWizard.Desktop/MapWizard.Desktop.csproj | 2 - .../ViewModels/ComboColourStudioViewModel.cs | 2 +- .../ComboColourStudioView.axaml | 20 ++--- .../ComboColourStudioView.axaml.cs | 73 ++++++++----------- .../Controls/BeatmapSelectionPanel.axaml | 29 ++++---- .../Controls/MillisecondFlyoutInput.axaml | 2 +- .../Views/Controls/ModernColorPicker.axaml | 2 +- .../Views/Dialogs/SongMapsetCard.axaml | 8 +- .../Views/Dialogs/SongSelectDialog.axaml | 2 +- MapWizard.Desktop/Views/MainWindow.axaml | 7 -- .../Views/MapCleaner/MapCleanerView.axaml | 2 +- .../MetadataManager/MetadataManagerView.axaml | 30 ++++---- .../Views/Settings/SettingsView.axaml | 2 +- 13 files changed, 83 insertions(+), 98 deletions(-) diff --git a/MapWizard.Desktop/MapWizard.Desktop.csproj b/MapWizard.Desktop/MapWizard.Desktop.csproj index 7f45f9a..9ed03ee 100644 --- a/MapWizard.Desktop/MapWizard.Desktop.csproj +++ b/MapWizard.Desktop/MapWizard.Desktop.csproj @@ -14,10 +14,8 @@ - - diff --git a/MapWizard.Desktop/ViewModels/ComboColourStudioViewModel.cs b/MapWizard.Desktop/ViewModels/ComboColourStudioViewModel.cs index 4d1b94e..74bc6ef 100644 --- a/MapWizard.Desktop/ViewModels/ComboColourStudioViewModel.cs +++ b/MapWizard.Desktop/ViewModels/ComboColourStudioViewModel.cs @@ -177,7 +177,7 @@ private async Task SelectOriginMap(string path) } catch (Exception ex) { - MapWizard.Tools.HelperExtensions.MapWizardLogger.LogException(ex); + Tools.HelperExtensions.MapWizardLogger.LogException(ex); ShowToast(NotificationType.Error, "Combo Colour Studio", ex.Message); } } diff --git a/MapWizard.Desktop/Views/ComboColourStudio/ComboColourStudioView.axaml b/MapWizard.Desktop/Views/ComboColourStudio/ComboColourStudioView.axaml index c81fb31..2124751 100644 --- a/MapWizard.Desktop/Views/ComboColourStudio/ComboColourStudioView.axaml +++ b/MapWizard.Desktop/Views/ComboColourStudio/ComboColourStudioView.axaml @@ -8,11 +8,13 @@ xmlns:materialIcons="clr-namespace:Material.Icons.Avalonia;assembly=Material.Icons.Avalonia" xmlns:suki="clr-namespace:SukiUI.Controls;assembly=SukiUI" xmlns:theme="https://github.com/kikipoulet/SukiUI" + xmlns:models="using:MapWizard.Desktop.Models" xmlns:vm="clr-namespace:MapWizard.Desktop.ViewModels" mc:Ignorable="d" d:DesignWidth="900" d:DesignHeight="700" x:Class="MapWizard.Desktop.Views.ComboColourStudio.ComboColourStudioView" + x:Name="Root" x:DataType="vm:ComboColourStudioViewModel" Padding="16"> @@ -164,7 +166,7 @@ - +