Skip to content

Support the custom aria-goog-editable attribute to improve support for Google Slides #8964

Merged
michaelDCurran merged 2 commits into
betafrom
aria-goog-editable
Nov 21, 2018
Merged

Support the custom aria-goog-editable attribute to improve support for Google Slides #8964
michaelDCurran merged 2 commits into
betafrom
aria-goog-editable

Conversation

@michaelDCurran

Copy link
Copy Markdown
Member

Link to issue number:

None.

Summary of the issue:

In Google Slides, Google makes use of contenteditable for technical reasons, even when the content in question is read-only as far as the user is concerned.
This means that when moving focus around a slide, NVDA sees the focused node is editable and therefore tries to read it like it would an edit field (I.e. announces he current line of text where the caret is, or in many cases, what is selected).
Google has fixed this internally in Google Chrome by not exposing the editable state on IAccessible2 objects in this specific situation, but in Firefox, they expose a custom aria-goog-editable attribute set to False, denoting that although contenteditable is used, accessibility should reflect that it is not editable.
NVDA should honor this attribute and drop the editable state itself.
In future, this attribute could be standardized by ARIA as aria-editable.

Description of how this pull request fixes the issue:

This PR detects aria-goog-editable, and if false, discards the editable state from NVDAObjects. Thus, when moving around Google Slides, focus is announced like a normal non-editable control, rather than an edit field.

Testing performed:

Opened an existing slide dec in Google Slides. Moved focus around a slide using tab and shift+tab. Current line / selection was not announced, rather just the control itself.

Known issues with pull request:

None.

Change log entry:

Bug fixes:

  • In Google Slides, NVDA no longer reports selected text on each control.

…e the editable state off in contenteditable nodes.
@michaelDCurran michaelDCurran merged commit ca464fb into beta Nov 21, 2018
@nvaccessAuto nvaccessAuto added this to the 2018.4 milestone Nov 21, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants