Closed mbgower closed 1 year ago
Since these two issues can be addressed separately, I've broken them out into their own issues and am closing this in favor of those
As discussed with @Kritvi-bhatia17, the gray fill on selection is no longer a problem because the blue border is used to indicate focus on the dropdown item with focus.
Package
@carbon/react
Browser
Chrome
Operating System
MacOS
Package version
https://react.carbondesignsystem.com/?path=/story/components-multiselect--default
React version
No response
Automated testing tool and ruleset
n/a
Assistive technology
n/a
Description
The multi-select dropdown implementation in react has a number of issues not found in the Dropdown implementation. Although I have listed a few in other issues opened against the dropdown component, all the following are unique to the multi-select, so it seemed to make sense to open a separate issue for these.
issue 1 Only Spacebar should be used to select checkboxes in multi-select
For a single-select dropdown, both Enter and Spacebar can be used to select the item. However, with multi-select it is recommended to only make Spacebar the selection mechanism. There are a number of reasons:
Issue 2 Highlighting should only be on items with focus, not on selected items
In the multi-select, items that are selected are both checked AND have a fill added. This is needlessly redundant AND causes difficulties navigating since the same fill is added to show the item with focus. A user cannot see any evidence of focus moving when moving through multiple selected items. This is shown in the following screen snippet where the item with focus is option 2. This may be resolved if the issue on increasing contrast on the item with focus, https://github.com/carbon-design-system/carbon/issues/12720, is addressed.
WCAG 2.1 Violation
recommendations in regard to 2.1.1 Keyboard and 1.4.11 Non-text contrast
Reproduction/example
https://react.carbondesignsystem.com/?path=/story/components-multiselect--default
Steps to reproduce
navigate through a the multi-select. Select a few items with Spacebar. Now try arrowing through them and decipher where focus is.
Code of Conduct