-
Couldn't load subscription status.
- Fork 14
Closed
Labels
a11yFixes or features related to accessibilityFixes or features related to accessibilityenhancementNew feature or requestNew feature or requestnext-releaseWill be closed in the next release (done in master branch)Will be closed in the next release (done in master branch)
Description
Hey !
I've been playing around with this library for a few days, it works fine, but lacks accessibility features that should be mandatory.
When comparing this component behavior to WAI ARIA patterns' select behavior, we can list a few elements that are not working the same :
- Button has a
tabindex="-1", preventing users from focusing it using keyboard (Option list not open when focusing with tab, or using arrow keys #329) - Can currently be hotfixed by removing the tabindex attribute manually - Button should toggle the select altogether (Menu should open on first click and close again on second click #299) - Can currently be hotfixed by changing the button styles so that it fits its whole parent
- When focusing the component while the options list is not shown, pressing the top or bottom arrow key should open the options list. Currently, it does nothing related to the component, and scrolls the page as if there was no focus
- When focus is leaving the component (when clicking anywhere or using the tab key to focus something else), the options list should close, and the selected value should automatically change to the value that was focused last
- The "Page Start" and "Page End" properties should move the focus to the first and last element in the list, respectively
- Typing something when the element is focused should move the focus to the corresponding option (even when
is-searchable="false" - And many more use cases that are described in the WAI ARIA Pattern's "Keyboard Support" section
Metadata
Metadata
Assignees
Labels
a11yFixes or features related to accessibilityFixes or features related to accessibilityenhancementNew feature or requestNew feature or requestnext-releaseWill be closed in the next release (done in master branch)Will be closed in the next release (done in master branch)