JedWatson / JedWatson/react-select

Accessibility: no way to clear the selection with a keyboard

Open
#4,988 15 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

issue/bug-unconfirmed
Dominant language
TypeScript
Stars
28k
Forks
4.1k
PR merge metrics
No merged PRs in 30d

Description

Caveat: I'm not an accessibility expert so perhaps there is an alternative mechanism available to clear selections. But the usual way (tabbing to the clear button) is not working.

Reproduction Steps

  1. open NVDA
  2. visit https://react-select.com/
  3. tab to any select example that has a selected item and that is clearable (at the time of this writing the first example satisfies these conditions)
  4. tab again

Expected Behavior

I would expect Step 4 to focus the "X" that clears the selected option.

Actual Behavior

You can't focus the clear button.

Proposed Solution

Make the clear div a button tag.

Am I Willing To Submit A PR For This?

Yes, absolutely. The company I work for has budget for fixing a11y issues in the open source libraries we use or that we are considering using.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the issue at https://react-select.com/ with NVDA, following the four listed steps and inspecting the clear control. Done means the clear control can receive keyboard focus when tabbing from a selected, clearable example and still clears the selection when activated.

Written by the indexing model from the issue text.

Assessment

Tech stack
react, typescript
Domain
accessibility, frontend
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.