Make the color picker saturation control work with windows screen readers #10807
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.
Splitting this out from #10564
Description
Screen readers on Windows need to switch to "forms mode" on the saturation control to stop intercepting keystrokes and make the control work.
Adding a
role="application"
to the saturation control wrapper fixes it. Please considerrole="application"
must be used with caution and very sparingly, as it resets any native semantics and has other serious drawbacks; please always ask to the a11y team before using it.Thinking better at what proposed in #10564 (comment) I now think there's no need for an
aria-label
on the div with role application, as it's not focusable and focus goes to the button instead.How has this been tested?
I've tested on Windows without and with a screen reader running. Combos:
Recommended: test on a real Windows machine, not on a VM running Windows, see #10564 (comment)