From 1e65723402f3b98c14dd457869e7b36d61be529f Mon Sep 17 00:00:00 2001 From: laurentiu021 Date: Fri, 22 May 2026 11:16:11 +0300 Subject: [PATCH] =?UTF-8?q?fix:=20resolve=20UI=20issues=20=E2=80=94=20empt?= =?UTF-8?q?y=20DNS=20page,=20ghost=20checkboxes,=20tune-up=20confirm?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CHANGELOG.md | 9 +++++++++ .../SysManager/ViewModels/DashboardViewModel.cs | 11 ++++++----- SysManager/SysManager/Views/DnsHostsView.xaml | 2 +- SysManager/SysManager/Views/UninstallerView.xaml | 3 ++- SysManager/SysManager/Views/WindowsUpdateView.xaml | 3 ++- 5 files changed, 20 insertions(+), 8 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 06e8b6de..f09993c4 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,15 @@ adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). ## [Unreleased] +## [1.7.3] - 2026-05-22 + +### Fixed +- **Critical: startup crash** — fixed "Entry point DefWindowProc not found in user32.dll" + that prevented the app from launching. P/Invoke declaration now correctly specifies + `DefWindowProcW` entry point. +- **Shutdown crash** — fixed ObjectDisposedException when closing the app + (DnsHostsViewModel CTS disposal race condition). + ## [1.7.0] - 2026-05-21 ### Added diff --git a/SysManager/SysManager/ViewModels/DashboardViewModel.cs b/SysManager/SysManager/ViewModels/DashboardViewModel.cs index c64c15b2..c389cca1 100644 --- a/SysManager/SysManager/ViewModels/DashboardViewModel.cs +++ b/SysManager/SysManager/ViewModels/DashboardViewModel.cs @@ -121,11 +121,12 @@ private void RequestElevation() [RelayCommand(CanExecute = nameof(CanRunTuneUp))] private async Task RunTuneUpAsync() { - // Confirm Recycle Bin emptying before starting - bool emptyBin = DialogService.Instance.Confirm( - "Quick Tune-Up will clean temp files and scan your system.\n\n" + - "Do you also want to empty the Recycle Bin?", - "Quick Tune-Up"); + if (!DialogService.Instance.Confirm( + "Quick Tune-Up will clean temp files, empty Recycle Bin, and scan your system.\n\nProceed?", + "Quick Tune-Up — Confirm")) + return; + + bool emptyBin = true; var opLock = OperationLockService.Instance.TryAcquire( OperationCategory.Disk, "Quick Tune-Up"); diff --git a/SysManager/SysManager/Views/DnsHostsView.xaml b/SysManager/SysManager/Views/DnsHostsView.xaml index 18e01343..40919d98 100644 --- a/SysManager/SysManager/Views/DnsHostsView.xaml +++ b/SysManager/SysManager/Views/DnsHostsView.xaml @@ -23,7 +23,7 @@ Style="{StaticResource Subtle}" Margin="0,4,0,0"/> + Visibility="{Binding IsElevated, Converter={StaticResource FlexVis}, ConverterParameter=Inverse}"/> diff --git a/SysManager/SysManager/Views/UninstallerView.xaml b/SysManager/SysManager/Views/UninstallerView.xaml index 4161ada3..7b8c660b 100644 --- a/SysManager/SysManager/Views/UninstallerView.xaml +++ b/SysManager/SysManager/Views/UninstallerView.xaml @@ -65,7 +65,8 @@ RowBackground="Transparent" AlternatingRowBackground="#0F141C" SelectionMode="Single" CanUserSortColumns="True" VirtualizingPanel.IsVirtualizing="True" - VirtualizingPanel.VirtualizationMode="Recycling"> + VirtualizingPanel.VirtualizationMode="Recycling" + Visibility="{Binding FilteredApps.Count, Converter={StaticResource GreaterThanZero}}"> + VirtualizingPanel.VirtualizationMode="Recycling" + Visibility="{Binding UpdateCount, Converter={StaticResource GreaterThanZero}}">