(Accessibility) NVDA/JAWS support for EuiGlobalToastList
#2055
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.
Closes #1947
Summary
Every toast has an aria-live attribute, there is no live region at all.
It does work: VoiceOver
It doesn't work: NVDA, JAWS.
✅ Now
A live region role="region" initializes at the component mounting,
the globalToastList is an aria-live region itself now.
Thus the Screen Reader understands where it should wait for updates.
Have a look at #1947 issue's description, there are a couple of links to standard explanations.
It does work: VoiceOver, NVDA, JAWS
It doesn't work: n/a
Expected behaviour
Once a toast notification is rendered, it is getting be announced.
At the moment of the next toast coming, Screen Reader may stop saying and start announcing the coming one.
Some screen readers may finish first announcing the previous notification and after that start another one.
Checking against ScreenReaders
✅ VoiceOver + Safari
✅ NVDA + Firefox
✅ NVDA + IE11
✅ Narrator + Edge
✅ NVDA + Chrome
Checklist
This was checked in mobileAny props added have proper autodocsDocumentation examples were addedThis was checked for breaking changes and labeled appropriatelyThis required updates to Framer X components