Skip to content

Commit 666c874

Browse files
Add accessibility labels to improve screen reader support (#7105)
* Add accessibility with AutomationProperties.Name to menus * Add accessibility labels to StatusBarView using ResUI resources * Add accessibility labels to ProfilesView using ResUI resources
1 parent 5f9f677 commit 666c874

File tree

3 files changed

+44
-23
lines changed

3 files changed

+44
-23
lines changed

v2rayN/v2rayN/Views/MainWindow.xaml

Lines changed: 16 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,8 @@
4242
ClipToBounds="True"
4343
Style="{StaticResource MaterialDesignToolBar}">
4444
<Menu Margin="0,1" Style="{StaticResource ToolbarMenu}">
45-
<MenuItem Padding="8,0">
45+
<MenuItem Padding="8,0"
46+
AutomationProperties.Name="{x:Static resx:ResUI.menuServers}">
4647
<MenuItem.Header>
4748
<StackPanel Orientation="Horizontal">
4849
<materialDesign:PackIcon
@@ -110,7 +111,8 @@
110111
</Menu>
111112
<Separator />
112113
<Menu Margin="0,1" Style="{StaticResource ToolbarMenu}">
113-
<MenuItem Padding="8,0">
114+
<MenuItem Padding="8,0"
115+
AutomationProperties.Name="{x:Static resx:ResUI.menuSubscription}">
114116
<MenuItem.Header>
115117
<StackPanel Orientation="Horizontal">
116118
<materialDesign:PackIcon
@@ -145,7 +147,8 @@
145147
</Menu>
146148
<Separator />
147149
<Menu Margin="0,1" Style="{StaticResource ToolbarMenu}">
148-
<MenuItem Padding="8,0">
150+
<MenuItem Padding="8,0" Width="86"
151+
AutomationProperties.Name="{x:Static resx:ResUI.menuSetting}">
149152
<MenuItem.Header>
150153
<StackPanel Orientation="Horizontal">
151154
<materialDesign:PackIcon
@@ -211,7 +214,8 @@
211214
</Menu>
212215
<Separator />
213216
<Menu Margin="0,1" Style="{StaticResource ToolbarMenu}">
214-
<MenuItem x:Name="menuReload" Padding="8,0">
217+
<MenuItem x:Name="menuReload" Padding="8,0"
218+
AutomationProperties.Name="{x:Static resx:ResUI.menuReload}">
215219
<MenuItem.Header>
216220
<StackPanel Orientation="Horizontal">
217221
<materialDesign:PackIcon
@@ -225,7 +229,8 @@
225229
</Menu>
226230
<Separator />
227231
<Menu Margin="0,1" Style="{StaticResource ToolbarMenu}">
228-
<MenuItem Name="menuCheckUpdate" Padding="8,0">
232+
<MenuItem Name="menuCheckUpdate" Padding="8,0"
233+
AutomationProperties.Name="{x:Static resx:ResUI.menuCheckUpdate}">
229234
<MenuItem.Header>
230235
<StackPanel Orientation="Horizontal">
231236
<materialDesign:PackIcon
@@ -239,7 +244,8 @@
239244
</Menu>
240245
<Separator />
241246
<Menu Margin="0,1" Style="{StaticResource ToolbarMenu}">
242-
<MenuItem x:Name="menuHelp" Padding="8,0">
247+
<MenuItem x:Name="menuHelp" Padding="8,0"
248+
AutomationProperties.Name="{x:Static resx:ResUI.menuHelp}">
243249
<MenuItem.Header>
244250
<StackPanel Orientation="Horizontal">
245251
<materialDesign:PackIcon
@@ -253,7 +259,8 @@
253259
</Menu>
254260
<Separator />
255261
<Menu Margin="0,1" Style="{StaticResource ToolbarMenu}">
256-
<MenuItem x:Name="menuPromotion" Padding="8,0">
262+
<MenuItem x:Name="menuPromotion" Padding="8,0"
263+
AutomationProperties.Name="{x:Static resx:ResUI.menuPromotion}">
257264
<MenuItem.Header>
258265
<StackPanel Orientation="Horizontal">
259266
<materialDesign:PackIcon
@@ -267,7 +274,8 @@
267274
</Menu>
268275
<Separator />
269276
<Menu Margin="0,1" Style="{StaticResource ToolbarMenu}">
270-
<MenuItem x:Name="menuClose" Padding="8,0">
277+
<MenuItem x:Name="menuClose" Padding="8,0"
278+
AutomationProperties.Name="{x:Static resx:ResUI.menuClose}">
271279
<MenuItem.Header>
272280
<StackPanel Orientation="Horizontal">
273281
<materialDesign:PackIcon

v2rayN/v2rayN/Views/ProfilesView.xaml

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,8 @@
4141
Height="30"
4242
Margin="{StaticResource MarginLeftRight4}"
4343
Style="{StaticResource MaterialDesignFloatingActionMiniLightButton}"
44-
ToolTip="{x:Static resx:ResUI.menuSubEdit}">
44+
ToolTip="{x:Static resx:ResUI.menuSubEdit}"
45+
AutomationProperties.Name="{x:Static resx:ResUI.menuSubEdit}">
4546
<materialDesign:PackIcon VerticalAlignment="Center" Kind="Edit" />
4647
</Button>
4748
<Button
@@ -50,7 +51,8 @@
5051
Height="30"
5152
Margin="{StaticResource MarginLeftRight4}"
5253
Style="{StaticResource MaterialDesignFloatingActionMiniLightButton}"
53-
ToolTip="{x:Static resx:ResUI.menuSubAdd}">
54+
ToolTip="{x:Static resx:ResUI.menuSubAdd}"
55+
AutomationProperties.Name="{x:Static resx:ResUI.menuSubAdd}">
5456
<materialDesign:PackIcon VerticalAlignment="Center" Kind="Plus" />
5557
</Button>
5658

@@ -60,7 +62,8 @@
6062
Height="30"
6163
Margin="{StaticResource MarginLeftRight8}"
6264
Style="{StaticResource MaterialDesignFloatingActionMiniLightButton}"
63-
ToolTip="{x:Static resx:ResUI.menuProfileAutofitColumnWidth}">
65+
ToolTip="{x:Static resx:ResUI.menuProfileAutofitColumnWidth}"
66+
AutomationProperties.Name="{x:Static resx:ResUI.menuProfileAutofitColumnWidth}">
6467
<materialDesign:PackIcon VerticalAlignment="Center" Kind="ArrowSplitVertical" />
6568
</Button>
6669
<TextBox
@@ -70,7 +73,8 @@
7073
VerticalContentAlignment="Center"
7174
materialDesign:HintAssist.Hint="{x:Static resx:ResUI.MsgServerTitle}"
7275
materialDesign:TextFieldAssist.HasClearButton="True"
73-
Style="{StaticResource DefTextBox}" />
76+
Style="{StaticResource DefTextBox}"
77+
AutomationProperties.Name="{x:Static resx:ResUI.MsgServerTitle}" />
7478
</WrapPanel>
7579
<DataGrid
7680
x:Name="lstProfiles"

v2rayN/v2rayN/Views/StatusBarView.xaml

Lines changed: 20 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@
6161
x:Name="togEnableTun"
6262
Margin="{StaticResource Margin4}"
6363
HorizontalAlignment="Left"
64-
VerticalAlignment="Center" />
64+
VerticalAlignment="Center" AutomationProperties.Name="{x:Static resx:ResUI.TbEnableTunAs}" />
6565
</StackPanel>
6666

6767
<StackPanel
@@ -75,7 +75,8 @@
7575
Margin="{StaticResource MarginLeftRight8}"
7676
materialDesign:HintAssist.Hint="{x:Static resx:ResUI.menuSystemproxy}"
7777
FontSize="{DynamicResource StdFontSize}"
78-
Style="{StaticResource MaterialDesignFloatingHintComboBox}">
78+
Style="{StaticResource MaterialDesignFloatingHintComboBox}"
79+
AutomationProperties.Name="{x:Static resx:ResUI.menuSystemproxy}">
7980
<ComboBoxItem Content="{x:Static resx:ResUI.menuSystemProxyClear}" />
8081
<ComboBoxItem Content="{x:Static resx:ResUI.menuSystemProxySet}" />
8182
<ComboBoxItem Content="{x:Static resx:ResUI.menuSystemProxyNothing}" />
@@ -89,7 +90,8 @@
8990
materialDesign:HintAssist.Hint="{x:Static resx:ResUI.menuRouting}"
9091
DisplayMemberPath="Remarks"
9192
FontSize="{DynamicResource StdFontSize}"
92-
Style="{StaticResource MaterialDesignFloatingHintComboBox}" />
93+
Style="{StaticResource MaterialDesignFloatingHintComboBox}"
94+
AutomationProperties.Name="{x:Static resx:ResUI.menuRouting}"/>
9395
</StackPanel>
9496

9597
<StackPanel Margin="{StaticResource MarginLeftRight8}" VerticalAlignment="Center">
@@ -107,7 +109,8 @@
107109
ToolTipText="v2rayN">
108110
<tb:TaskbarIcon.ContextMenu>
109111
<ContextMenu Style="{StaticResource DefContextMenu}">
110-
<MenuItem x:Name="menuSystemProxyClear" Height="{StaticResource MenuItemHeight}">
112+
<MenuItem x:Name="menuSystemProxyClear" Height="{StaticResource MenuItemHeight}"
113+
AutomationProperties.Name="{x:Static resx:ResUI.menuSystemProxyClear}">
111114
<MenuItem.Header>
112115
<StackPanel Orientation="Horizontal">
113116
<materialDesign:PackIcon
@@ -119,7 +122,8 @@
119122
</StackPanel>
120123
</MenuItem.Header>
121124
</MenuItem>
122-
<MenuItem x:Name="menuSystemProxySet" Height="{StaticResource MenuItemHeight}">
125+
<MenuItem x:Name="menuSystemProxySet" Height="{StaticResource MenuItemHeight}"
126+
AutomationProperties.Name="{x:Static resx:ResUI.menuSystemProxySet}">
123127
<MenuItem.Header>
124128
<StackPanel Orientation="Horizontal">
125129
<materialDesign:PackIcon
@@ -131,7 +135,8 @@
131135
</StackPanel>
132136
</MenuItem.Header>
133137
</MenuItem>
134-
<MenuItem x:Name="menuSystemProxyNothing" Height="{StaticResource MenuItemHeight}">
138+
<MenuItem x:Name="menuSystemProxyNothing" Height="{StaticResource MenuItemHeight}"
139+
AutomationProperties.Name="{x:Static resx:ResUI.menuSystemProxyNothing}">
135140
<MenuItem.Header>
136141
<StackPanel Orientation="Horizontal">
137142
<materialDesign:PackIcon
@@ -143,7 +148,8 @@
143148
</StackPanel>
144149
</MenuItem.Header>
145150
</MenuItem>
146-
<MenuItem x:Name="menuSystemProxyPac" Height="{StaticResource MenuItemHeight}">
151+
<MenuItem x:Name="menuSystemProxyPac" Height="{StaticResource MenuItemHeight}"
152+
AutomationProperties.Name="{x:Static resx:ResUI.menuSystemProxyPac}">
147153
<MenuItem.Header>
148154
<StackPanel Orientation="Horizontal">
149155
<materialDesign:PackIcon
@@ -156,7 +162,8 @@
156162
</MenuItem.Header>
157163
</MenuItem>
158164
<Separator x:Name="sepRoutings" />
159-
<MenuItem x:Name="menuRoutings" Height="Auto">
165+
<MenuItem x:Name="menuRoutings" Height="Auto"
166+
AutomationProperties.Name="{x:Static resx:ResUI.menuRouting}">
160167
<MenuItem.Header>
161168
<DockPanel>
162169
<ComboBox
@@ -165,11 +172,12 @@
165172
materialDesign:HintAssist.Hint="{x:Static resx:ResUI.menuRouting}"
166173
DisplayMemberPath="Remarks"
167174
FontSize="{DynamicResource StdFontSize}"
168-
Style="{StaticResource MaterialDesignFilledComboBox}" />
175+
Style="{StaticResource MaterialDesignFilledComboBox}"
176+
AutomationProperties.Name="{x:Static resx:ResUI.menuRouting}"/>
169177
</DockPanel>
170178
</MenuItem.Header>
171179
</MenuItem>
172-
<MenuItem Height="Auto">
180+
<MenuItem Height="Auto" AutomationProperties.Name="{x:Static resx:ResUI.menuServers}">
173181
<MenuItem.Header>
174182
<DockPanel>
175183
<ComboBox
@@ -178,7 +186,8 @@
178186
materialDesign:HintAssist.Hint="{x:Static resx:ResUI.menuServers}"
179187
DisplayMemberPath="Text"
180188
FontSize="{DynamicResource StdFontSize}"
181-
Style="{StaticResource MaterialDesignFilledComboBox}" />
189+
Style="{StaticResource MaterialDesignFilledComboBox}"
190+
AutomationProperties.Name="{x:Static resx:ResUI.menuServers}"/>
182191
</DockPanel>
183192
</MenuItem.Header>
184193
</MenuItem>

0 commit comments

Comments
 (0)