Skip to content

Commit c3cf47c

Browse files
committed
feat: add screen-reader narration (AutomationProperties) to all v0.9 panels
1 parent 8814685 commit c3cf47c

1 file changed

Lines changed: 28 additions & 10 deletions

File tree

src/DeepPurge.App/Views/MainWindow.xaml

Lines changed: 28 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1035,7 +1035,9 @@
10351035
<!-- DRIVER STORE (pnputil /enum-drivers + size + old-version flag) -->
10361036
<!-- ═══════════════════════════════════════════════════════ -->
10371037
<DataGrid x:Name="dgDrivers" Visibility="Collapsed" AutoGenerateColumns="False"
1038-
ItemsSource="{Binding DriverPackages}">
1038+
ItemsSource="{Binding DriverPackages}"
1039+
AutomationProperties.Name="Driver Store packages"
1040+
AutomationProperties.HelpText="Third-party driver packages. Old versions can be removed to reclaim disk space.">
10391041
<DataGrid.Columns>
10401042
<DataGridTextColumn Binding="{Binding PublishedName}" Header="OEM" Width="90"/>
10411043
<DataGridTextColumn Binding="{Binding OriginalName}" Header="INF" Width="220"/>
@@ -1051,7 +1053,9 @@
10511053
<!-- STARTUP IMPACT (parsed from WDI boot traces) -->
10521054
<!-- ═══════════════════════════════════════════════════════ -->
10531055
<DataGrid x:Name="dgStartupImpact" Visibility="Collapsed" AutoGenerateColumns="False"
1054-
ItemsSource="{Binding StartupImpacts}">
1056+
ItemsSource="{Binding StartupImpacts}"
1057+
AutomationProperties.Name="Startup impact analysis"
1058+
AutomationProperties.HelpText="Boot-time cost per autorun process. High-impact processes slow system startup.">
10551059
<DataGrid.Columns>
10561060
<DataGridTextColumn Binding="{Binding Impact}" Header="IMPACT" Width="90"/>
10571061
<DataGridTextColumn Binding="{Binding ProcessName}" Header="PROCESS" Width="280"/>
@@ -1065,7 +1069,9 @@
10651069
<!-- BROKEN SHORTCUTS (.lnk on Desktop + Start Menu) -->
10661070
<!-- ═══════════════════════════════════════════════════════ -->
10671071
<DataGrid x:Name="dgShortcuts" Visibility="Collapsed" AutoGenerateColumns="False"
1068-
ItemsSource="{Binding BrokenShortcuts}">
1072+
ItemsSource="{Binding BrokenShortcuts}"
1073+
AutomationProperties.Name="Broken shortcuts"
1074+
AutomationProperties.HelpText="Desktop and Start Menu shortcuts pointing to missing targets.">
10691075
<DataGrid.Columns>
10701076
<DataGridTextColumn Binding="{Binding Path}" Header="SHORTCUT" Width="2*"/>
10711077
<DataGridTextColumn Binding="{Binding TargetPath}" Header="MISSING TARGET" Width="2*"/>
@@ -1077,7 +1083,9 @@
10771083
<!-- DUPLICATE FILES (size → XXH3 head → XXH3 full) -->
10781084
<!-- ═══════════════════════════════════════════════════════ -->
10791085
<DataGrid x:Name="dgDuplicates" Visibility="Collapsed" AutoGenerateColumns="False"
1080-
ItemsSource="{Binding DuplicateGroups}">
1086+
ItemsSource="{Binding DuplicateGroups}"
1087+
AutomationProperties.Name="Duplicate file groups"
1088+
AutomationProperties.HelpText="Files with identical content grouped by hash. Delete copies to reclaim wasted space.">
10811089
<DataGrid.Columns>
10821090
<DataGridTextColumn Binding="{Binding FileSize, Converter={StaticResource BytesToSizeConverter}}" Header="SIZE" Width="90"/>
10831091
<DataGridTextColumn Binding="{Binding Paths, Converter={StaticResource CountConverter}}" Header="COPIES" Width="70"/>
@@ -1093,7 +1101,9 @@
10931101
<!-- ═══════════════════════════════════════════════════════ -->
10941102
<!-- COMMUNITY CLEANERS (winapp2.ini) -->
10951103
<!-- ═══════════════════════════════════════════════════════ -->
1096-
<Grid x:Name="panelWinapp2" Visibility="Collapsed">
1104+
<Grid x:Name="panelWinapp2" Visibility="Collapsed"
1105+
AutomationProperties.Name="Community Cleaners panel"
1106+
AutomationProperties.HelpText="Winapp2.ini community-maintained cleaner definitions. Run applicable rules to clean third-party app caches.">
10971107
<Grid.RowDefinitions>
10981108
<RowDefinition Height="Auto"/>
10991109
<RowDefinition Height="*"/>
@@ -1117,7 +1127,9 @@
11171127
<!-- ═══════════════════════════════════════════════════════ -->
11181128
<!-- REPAIR WINDOWS (sfc / dism / chkdsk / caches) -->
11191129
<!-- ═══════════════════════════════════════════════════════ -->
1120-
<Grid x:Name="panelRepair" Visibility="Collapsed">
1130+
<Grid x:Name="panelRepair" Visibility="Collapsed"
1131+
AutomationProperties.Name="Windows Repair tools"
1132+
AutomationProperties.HelpText="System integrity and cache rebuild tools. sfc, DISM, chkdsk, font cache, and icon cache.">
11211133
<Grid.RowDefinitions>
11221134
<RowDefinition Height="Auto"/>
11231135
<RowDefinition Height="Auto"/>
@@ -1130,8 +1142,10 @@
11301142
</TextBlock>
11311143
</Border>
11321144
<WrapPanel Grid.Row="1" Orientation="Horizontal" Margin="24,4,24,14">
1133-
<Button Content="sfc /scannow" Command="{Binding RunSfcCommand}" Style="{DynamicResource AccentButton}" Margin="0,0,8,6" Padding="14,8"/>
1134-
<Button Content="DISM ScanHealth" Command="{Binding RunDismScanCommand}" Margin="0,0,8,6" Padding="14,8"/>
1145+
<Button Content="sfc /scannow" Command="{Binding RunSfcCommand}" Style="{DynamicResource AccentButton}" Margin="0,0,8,6" Padding="14,8"
1146+
AutomationProperties.Name="Run System File Checker scan"/>
1147+
<Button Content="DISM ScanHealth" Command="{Binding RunDismScanCommand}" Margin="0,0,8,6" Padding="14,8"
1148+
AutomationProperties.Name="Run DISM scan health check"/>
11351149
<Button Content="DISM RestoreHealth" Command="{Binding RunDismRestoreCommand}" Margin="0,0,8,6" Padding="14,8"/>
11361150
<Button Content="DISM ComponentCleanup" Command="{Binding RunDismCleanupCommand}" Margin="0,0,8,6" Padding="14,8"/>
11371151
<Button Content="chkdsk C: /scan" Command="{Binding RunChkDskCommand}" Margin="0,0,8,6" Padding="14,8"/>
@@ -1153,7 +1167,9 @@
11531167
<!-- ═══════════════════════════════════════════════════════ -->
11541168
<!-- SCHEDULED CLEANING (schtasks wrappers) -->
11551169
<!-- ═══════════════════════════════════════════════════════ -->
1156-
<Grid x:Name="panelSchedule" Visibility="Collapsed">
1170+
<Grid x:Name="panelSchedule" Visibility="Collapsed"
1171+
AutomationProperties.Name="Scheduled Cleaning panel"
1172+
AutomationProperties.HelpText="Scheduled cleaning jobs running via Task Scheduler. Create jobs from the command line.">
11571173
<Grid.RowDefinitions>
11581174
<RowDefinition Height="Auto"/>
11591175
<RowDefinition Height="*"/>
@@ -1173,7 +1189,9 @@
11731189
<!-- ═══════════════════════════════════════════════════════ -->
11741190
<!-- ABOUT / UPDATES -->
11751191
<!-- ═══════════════════════════════════════════════════════ -->
1176-
<Border x:Name="panelAbout" Visibility="Collapsed" Padding="48,32">
1192+
<Border x:Name="panelAbout" Visibility="Collapsed" Padding="48,32"
1193+
AutomationProperties.Name="About and Updates panel"
1194+
AutomationProperties.HelpText="Application version, data location, portable mode status, and update check.">
11771195
<StackPanel MaxWidth="640" HorizontalAlignment="Left" VerticalAlignment="Top">
11781196
<TextBlock Text="DeepPurge" FontSize="32" FontWeight="Bold"
11791197
Foreground="{DynamicResource TextBrush}" Margin="0,0,0,2"/>

0 commit comments

Comments
 (0)