Skip to content

Conversation

@BenHenning
Copy link
Contributor

The basics

The details

Resolves

Fixes

Proposed Changes

Attempt to demonstrate using the web speech API as an alternative for reading out labels instead of using a screen reader.

The mode can be activated using 'ctrl+alt+s' or 'command+alt+s'.

Some problems/limitations:

  • There's a bit of a delay before speech utterance begins, but then it's consistent.
  • Roles are not read correctly, so additional role context is ignored.
  • This does not seem to work alongside a reader. I made some effort to try and make it so that elements are ignored when the speech synthesis mode is enabled, but this reveals two issues:
    • (1) The speech synthesis API seems to be completely disabled when a reader is enabled (at least for ChromeVox).
    • (2) Removing all ARIA information and event setting an element to 'presentation' does NOT stop its readout if it has a negative tabindex and is focused. Instead, the browser seems to fall back to some default accessibility node representation which then leads to an unhelpful readout (like 'Graphics Symbol' for a block's path object).

Reason for Changes

Test Coverage

Documentation

Additional Information

@google-cla
Copy link

google-cla bot commented Oct 28, 2025

Thanks for your pull request! It looks like this may be your first contribution to a Google open source project. Before we can look at your pull request, you'll need to sign a Contributor License Agreement (CLA).

View this failed invocation of the CLA check for more information.

For the most up to date status, view the checks section at the bottom of the pull request.

@BenHenning BenHenning changed the base branch from develop to add-screen-reader-support-experimental October 28, 2025 21:24
@github-actions github-actions bot added PR: feature Adds a feature and removed PR: feature Adds a feature labels Oct 28, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

PR: feature Adds a feature

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant