Fix repetitive narration in Windows Narrator #4323
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Changelog Entry
Fixed
aria-keyshortcuts
should use modifier keys according toKeyboardEvent
key values spec, by @compulim, in PR #4323Description
We are fixing repetitive narrations and cleaning up some remaining work from last PR:
aria-keyshortcuts
compliant<ul>
/<li>
Design
Suggested actions clean up
(Related to #4315)
aria-orientation="vertical"
for suggested actions in stacked layout, which is arole="toolbar"
Remove timestamp narration in live region
For live region, timestamps were not required to read because the message just arrived. We stated that in
ACCESSIBILITY.md
for some time but we did not remove them.Repetitive narrations in live region
(Related to #4295)
In Windows Narrator, when
aria-live="polite"
is paired witharia-labelledby
, the narrations are repeated. We should not usearia-label
oraria-labelledby
for anything under live region. This will workaround issues in Windows Narrator.Repetitive narrations with JAWS
(Related to #4294)
When the end-user move cursor in JAWS, it will narrate
<div role="group">
with its content. Then, the end-user continues to move the cursor down, JAWS will narrate its content again.We should refrain from using
role="group"
, or else, addaria-label
/aria-labelledby
.Simplify keyboard shortcuts
(Related to #4325)
According to W3C,
aria-keyshortcuts
should be"alt+shift+a"
or"ctrl+altgraph+a"
(for "Ctrl + Option + A" in macOS)However, when narrating it as accessible name, we do not need + (plus) signs.
aria-keyshortcuts
"Alt+Shift+a"
"Alt Shift A"
"Ctrl+AltGraph+a"
"Ctrl Option A"
Simplify DOM tree with invisible labels
Some components render like this:
aria-labelledby
with a DOM element is redundant. It should bearia-labelledby
are preferred and used for labels that are visible and narrated at the same time. However, if label is not visible but only narrated, we should usearia-label
.Attachments should not use
<ul>
/<li>
We should refrain from using
<ul>
/<li>
to prevent unnecessary list level advancement. This is stated previously inACCESSIBILITY.md
.Specific Changes
(Please refer to Design section.)
CHANGELOG.md
Review Checklist
CSS styles reviewed (minimal rules, noz-index
)Internationalization reviewed (strings, unit formatting)package.json
andpackage-lock.json
reviewedSecurity reviewed (no data URIs, check for nonce leak)