[autocomplete] Voiceover only announces selected option when selecting another option
Nobody has claimed this yet.
- Dominant language
- JavaScript
- Stars
- 99.1k
- Forks
- 32.5k
- Avg merge
- 2d 17h
- Merged PRs (30d)
- 106
Description
Duplicates
- I have searched the existing issues
Latest version
- I have tested the latest version
Current behavior 😯
I navigate to the Autocomplete component with Voiceover active and select an option. I then press the down arrow and the combox opens again and I can then navigate through the list of options. As I navigate through the list of options, Voiceover begins to announce the currently highlighted option but immediately stops and reannounces the option that I had selected previously. This means that a user using Voiceover cannot know what the currently highlighted option is.
Expected behavior 🤔
I navigate to the Autocomplete component with Voiceover active and select an option. I then press the down arrow and the combox opens again and I can then navigate through the list of options. As I navigate through the list of options, Voiceover announces the currently highlighted option and does not interrupt with my previous selection.
Steps to reproduce 🕹
Code Sandbox Link: https://codesandbox.io/s/combobox-material-demo-forked-8sqop?file=/demo.tsx
Screen Reader: Voice Over on Mac 11.6.1
Steps:
- Turn on Voiceover
- Go to the above code sandbox
- Navigate to the autocomplete component
- Type "The"
- Navigate through the options until you reach The Godfather
- Press space to select the option
- Press down arrow to reopen the combox
- Navigate through the options
- Listen to hear the Godfather repeated for each option
Context 🔦
I would like screen reader users to be able to use our website without an issue and be able to change their selection if we use the Autocomplete component
Your environment 🌎
`npx @mui/envinfo`
System:
OS: macOS 11.6.1
Binaries:
Node: 14.18.1 - ~/.nvm/versions/node/v14.18.1/bin/node
Yarn: Not Found
npm: 6.14.15 - ~/.nvm/versions/node/v14.18.1/bin/npm
Browsers:
Chrome: 98.0.4758.80
Edge: Not Found
Firefox: Not Found
Safari: 15.2
npmPackages:
@emotion/react: latest => 11.7.1
@emotion/styled: latest => 11.6.0
@mui/base: 5.0.0-alpha.68
@mui/material: latest => 5.4.1
@mui/private-theming: 5.4.1
@mui/styled-engine: 5.4.1
@mui/system: 5.4.1
@mui/types: 7.1.1
@mui/utils: 5.4.1
@types/react: latest => 17.0.39
react: latest => 17.0.2
react-dom: latest => 17.0.2
typescript: latest => 4.5.5
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the Autocomplete example in demo.tsx from the linked CodeSandbox and reproduce the behavior with VoiceOver. Trace the Autocomplete entry point and its highlighted-option announcements, then verify that moving through reopened options announces each current option without repeating the previous selection.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- javascript, react
- Domain
- accessibility, frontend
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100