UI: Various screen reader fixes

This commit fixes various issues with screen readers in the main OBS
interface. These were tested using NVDA on Windows 10 1903.

Checkboxes or buttons which toggle, when receiving an activate signal
from the screen reader would visually update, but not perform any
action. This is because they're listening only for clicks. They should
all now be listening for toggles instead.

The screen reader would navigate through the UI in the order that
elements are defined in the .ui XML, and not by their row positions.
The XML has been reordered so that things should be defined in their row
order.

Audio track selection now says Track 1, 2, etc, rather than just the
number. Various checkboxes that just say "Enable" now have accessible
text that says what the enable is for (since it says "checkbox", the
fact it's an enable should hopefully be clear). Type in the recording
tab of output now has accessible text which says "Recording Type".

All the right side buttons in hotkeys now have tooltips, and by
extension, accessible text. Currently it does not yet say what hotkey
the action is in relation to, but that would require more locales.
This commit is contained in:
VodBox
2019-09-04 08:58:53 +12:00
parent 297f9fb0fd
commit b5843caa48
10 changed files with 315 additions and 122 deletions

View File

@@ -390,8 +390,8 @@ Deinterlacing.TopFieldFirst="Top Field First"
Deinterlacing.BottomFieldFirst="Bottom Field First"
# volume control accessibility text
VolControl.SliderUnmuted="Volume slider for '%1': %2"
VolControl.SliderMuted="Volume slider for '%1': %2 (currently muted)"
VolControl.SliderUnmuted="Volume slider for '%1':"
VolControl.SliderMuted="Volume slider for '%1': (currently muted)"
VolControl.Mute="Mute '%1'"
VolControl.Properties="Properties for '%1'"
@@ -430,6 +430,12 @@ Basic.SourceSelect.CreateNew="Create new"
Basic.SourceSelect.AddExisting="Add Existing"
Basic.SourceSelect.AddVisible="Make source visible"
# source box
Basic.Main.Sources.Visibility="Visibility"
Basic.Main.Sources.VisibilityDescription="Controls the visibility of '%1' in the canvas"
Basic.Main.Sources.Lock="Lock"
Basic.Main.Sources.LockDescription="Locks the position and scale of '%1' in the canvas"
# properties window
Basic.PropertiesWindow="Properties for '%1'"
Basic.PropertiesWindow.AutoSelectFormat="%1 (autoselect: %2)"
@@ -733,6 +739,7 @@ Basic.Settings.Output.Adv.Audio.Track6="Track 6"
# basic mode 'output' settings - advanced section - recording subsection
Basic.Settings.Output.Adv.Recording="Recording"
Basic.Settings.Output.Adv.Recording.RecType="Recording Type"
Basic.Settings.Output.Adv.Recording.Type="Type"
Basic.Settings.Output.Adv.Recording.Type.Standard="Standard"
Basic.Settings.Output.Adv.Recording.Type.FFmpegOutput="Custom Output (FFmpeg)"