New issue
Advanced search Search tips

Issue 843744 link

Starred by 2 users

Issue metadata

Status: Fixed
Owner:
Closed: May 2018
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Windows
Pri: 1
Type: Bug
Team-Accessibility



Sign in to add a comment

Misspellings, grammar, superscript, subscript, ins, del are not read by screen readers in contenteditable

Reported by aaron...@gmail.com, May 16 2018

Issue description

Steps:
1. Load the attached file
2. Run with JAWS or NVDA screen reader
3. Arrow through the text
Misspellings, grammar, superscript and subscript ranges should be read. This works in Firefox.
 
Components: Blink>Accessibility
Labels: -Pri-3 Pri-1
Owner: aleventhal@chromium.org
Status: Started (was: Unconfirmed)
text-attributes.html
927 bytes View Download
Summary: Misspellings, grammar, superscript, subscript, ins, del are not read by screen readers in contenteditable (was: Misspellings, grammar, superscript and subscript are not read by screen readers in contenteditable)
Note that we need to invent a new text attribute for inserted/deleted text. See https://wiki.linuxfoundation.org/accessibility/iaccessible2/textattributes
Project Member

Comment 6 by bugdroid1@chromium.org, May 21 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/84da086ac8a21de0a177b800c8d6b1e21d867af1

commit 84da086ac8a21de0a177b800c8d6b1e21d867af1
Author: Aaron Leventhal <aleventhal@chromium.org>
Date: Mon May 21 23:21:05 2018

Make ARIA spelling/grammar errors accessible

ARIA spelling/grammar errors should propagate as text attributes.
However, text attributes are computed from descendants, and thus the
kInvalidState flags must be set on descendant text nodes, not just
the element with the aria-invalid attribute.

ARIA spelling errors override native spelling error text attributes on text only objects, when
equivalent attributes are specified on immediate parents via aria-invalid.

Bug:  843744 
Change-Id: I9afdd0f8beeedf9456bd7db4a3a9d223792ad6ae
Reviewed-on: https://chromium-review.googlesource.com/1066354
Commit-Queue: Aaron Leventhal <aleventhal@chromium.org>
Reviewed-by: Aaron Leventhal <aleventhal@chromium.org>
Reviewed-by: Nektarios Paisios <nektar@chromium.org>
Cr-Commit-Position: refs/heads/master@{#560401}
[modify] https://crrev.com/84da086ac8a21de0a177b800c8d6b1e21d867af1/content/browser/accessibility/browser_accessibility_com_win.cc
[modify] https://crrev.com/84da086ac8a21de0a177b800c8d6b1e21d867af1/content/browser/accessibility/browser_accessibility_com_win.h
[modify] https://crrev.com/84da086ac8a21de0a177b800c8d6b1e21d867af1/content/test/data/accessibility/aria/aria-invalid-expected-android.txt
[modify] https://crrev.com/84da086ac8a21de0a177b800c8d6b1e21d867af1/content/test/data/accessibility/aria/aria-invalid-expected-blink.txt
[modify] https://crrev.com/84da086ac8a21de0a177b800c8d6b1e21d867af1/content/test/data/accessibility/aria/aria-invalid-expected-mac.txt
[modify] https://crrev.com/84da086ac8a21de0a177b800c8d6b1e21d867af1/content/test/data/accessibility/aria/aria-invalid-expected-win.txt
[modify] https://crrev.com/84da086ac8a21de0a177b800c8d6b1e21d867af1/content/test/data/accessibility/aria/aria-invalid.html

Project Member

Comment 7 by bugdroid1@chromium.org, May 24 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/8e964d1384d65f9a7cd40e9c3c4fe78ce71da726

commit 8e964d1384d65f9a7cd40e9c3c4fe78ce71da726
Author: Aaron Leventhal <aleventhal@chromium.org>
Date: Thu May 24 20:03:16 2018

Subscript and superscript accessiblity semantics

When subscript or superscript styles or HTML tags are used, expose the
accessibility semantics. In IA2, use the text-position text attribute.

TBR=tsepez@chromium.org,spang@chromium.org,kinuko@chromium.org

Bug:  843744 
Cq-Include-Trybots: master.tryserver.chromium.linux:closure_compilation
Change-Id: Ie0dd8ef801f11548d1284ac433c08605129817d0
Reviewed-on: https://chromium-review.googlesource.com/1068994
Commit-Queue: Aaron Leventhal <aleventhal@chromium.org>
Reviewed-by: Dominic Mazzoni <dmazzoni@chromium.org>
Reviewed-by: Steven Bennetts <stevenjb@chromium.org>
Reviewed-by: David Tseng <dtseng@chromium.org>
Cr-Commit-Position: refs/heads/master@{#561584}
[modify] https://crrev.com/8e964d1384d65f9a7cd40e9c3c4fe78ce71da726/chrome/browser/resources/chromeos/chromevox/cvox2/background/editing.js
[modify] https://crrev.com/8e964d1384d65f9a7cd40e9c3c4fe78ce71da726/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings.grd
[modify] https://crrev.com/8e964d1384d65f9a7cd40e9c3c4fe78ce71da726/chrome/common/extensions/api/automation.idl
[modify] https://crrev.com/8e964d1384d65f9a7cd40e9c3c4fe78ce71da726/chrome/renderer/extensions/automation_internal_custom_bindings.cc
[modify] https://crrev.com/8e964d1384d65f9a7cd40e9c3c4fe78ce71da726/chromecast/common/extensions_api/automation.idl
[modify] https://crrev.com/8e964d1384d65f9a7cd40e9c3c4fe78ce71da726/chromecast/renderer/extensions/automation_internal_custom_bindings.cc
[modify] https://crrev.com/8e964d1384d65f9a7cd40e9c3c4fe78ce71da726/content/browser/accessibility/accessibility_tree_formatter_blink.cc
[modify] https://crrev.com/8e964d1384d65f9a7cd40e9c3c4fe78ce71da726/content/browser/accessibility/browser_accessibility_com_win.cc
[modify] https://crrev.com/8e964d1384d65f9a7cd40e9c3c4fe78ce71da726/content/renderer/accessibility/blink_ax_enum_conversion.cc
[modify] https://crrev.com/8e964d1384d65f9a7cd40e9c3c4fe78ce71da726/content/renderer/accessibility/blink_ax_enum_conversion.h
[modify] https://crrev.com/8e964d1384d65f9a7cd40e9c3c4fe78ce71da726/content/renderer/accessibility/blink_ax_tree_source.cc
[modify] https://crrev.com/8e964d1384d65f9a7cd40e9c3c4fe78ce71da726/content/test/data/accessibility/css/font-style-expected-blink.txt
[modify] https://crrev.com/8e964d1384d65f9a7cd40e9c3c4fe78ce71da726/content/test/data/accessibility/css/font-style-expected-win.txt
[modify] https://crrev.com/8e964d1384d65f9a7cd40e9c3c4fe78ce71da726/content/test/data/accessibility/css/font-style.html
[modify] https://crrev.com/8e964d1384d65f9a7cd40e9c3c4fe78ce71da726/content/test/data/accessibility/html/sub-expected-win.txt
[modify] https://crrev.com/8e964d1384d65f9a7cd40e9c3c4fe78ce71da726/content/test/data/accessibility/html/sub.html
[modify] https://crrev.com/8e964d1384d65f9a7cd40e9c3c4fe78ce71da726/content/test/data/accessibility/html/sup-expected-win.txt
[modify] https://crrev.com/8e964d1384d65f9a7cd40e9c3c4fe78ce71da726/content/test/data/accessibility/html/sup.html
[modify] https://crrev.com/8e964d1384d65f9a7cd40e9c3c4fe78ce71da726/third_party/blink/public/web/web_ax_enums.h
[modify] https://crrev.com/8e964d1384d65f9a7cd40e9c3c4fe78ce71da726/third_party/blink/public/web/web_ax_object.h
[modify] https://crrev.com/8e964d1384d65f9a7cd40e9c3c4fe78ce71da726/third_party/blink/renderer/modules/accessibility/ax_enums.cc
[modify] https://crrev.com/8e964d1384d65f9a7cd40e9c3c4fe78ce71da726/third_party/blink/renderer/modules/accessibility/ax_enums.h
[modify] https://crrev.com/8e964d1384d65f9a7cd40e9c3c4fe78ce71da726/third_party/blink/renderer/modules/accessibility/ax_layout_object.cc
[modify] https://crrev.com/8e964d1384d65f9a7cd40e9c3c4fe78ce71da726/third_party/blink/renderer/modules/accessibility/ax_layout_object.h
[modify] https://crrev.com/8e964d1384d65f9a7cd40e9c3c4fe78ce71da726/third_party/blink/renderer/modules/accessibility/ax_object.h
[modify] https://crrev.com/8e964d1384d65f9a7cd40e9c3c4fe78ce71da726/third_party/blink/renderer/modules/exported/web_ax_object.cc
[modify] https://crrev.com/8e964d1384d65f9a7cd40e9c3c4fe78ce71da726/third_party/closure_compiler/externs/automation.js
[modify] https://crrev.com/8e964d1384d65f9a7cd40e9c3c4fe78ce71da726/ui/accessibility/ax_enum_util.cc
[modify] https://crrev.com/8e964d1384d65f9a7cd40e9c3c4fe78ce71da726/ui/accessibility/ax_enum_util.h
[modify] https://crrev.com/8e964d1384d65f9a7cd40e9c3c4fe78ce71da726/ui/accessibility/ax_enums.mojom
[modify] https://crrev.com/8e964d1384d65f9a7cd40e9c3c4fe78ce71da726/ui/accessibility/ax_node_data.cc
[modify] https://crrev.com/8e964d1384d65f9a7cd40e9c3c4fe78ce71da726/ui/accessibility/ax_node_data.h

Project Member

Comment 8 by bugdroid1@chromium.org, May 25 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/5f878089c1bafd22e0c3b003c22e7cdb05935f8c

commit 5f878089c1bafd22e0c3b003c22e7cdb05935f8c
Author: Aaron Leventhal <aleventhal@chromium.org>
Date: Fri May 25 17:05:37 2018

Create new roles and expose content deletions and insertions

In HTML via <ins>/<del>, and planned for ARIA 1.2, it is possible to mark insertions and
deletions in a document. These need to be exposed to screen readers so that they can
read revision changes or change suggestions from document reviewers.

For now, ins/del are now mapped to internal roles, automation roles and OS X subroles.
We are waiting for roles from IA2 for the new roles there. Here is the github issue:
https://github.com/LinuxA11y/IAccessible2/issues/4

TBR=spang@chromium.org

Bug:  843744 
Cq-Include-Trybots: master.tryserver.chromium.linux:closure_compilation
Change-Id: I90e6d3140f6136a71e0d2f49b0b8d615485536bb
Reviewed-on: https://chromium-review.googlesource.com/1067362
Commit-Queue: Aaron Leventhal <aleventhal@chromium.org>
Reviewed-by: Dominic Mazzoni <dmazzoni@chromium.org>
Reviewed-by: Steven Bennetts <stevenjb@chromium.org>
Reviewed-by: David Tseng <dtseng@chromium.org>
Cr-Commit-Position: refs/heads/master@{#561920}
[modify] https://crrev.com/5f878089c1bafd22e0c3b003c22e7cdb05935f8c/chrome/browser/resources/chromeos/chromevox/cvox2/background/output.js
[modify] https://crrev.com/5f878089c1bafd22e0c3b003c22e7cdb05935f8c/chrome/browser/resources/chromeos/chromevox/cvox2/background/output_test.extjs
[modify] https://crrev.com/5f878089c1bafd22e0c3b003c22e7cdb05935f8c/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings.grd
[modify] https://crrev.com/5f878089c1bafd22e0c3b003c22e7cdb05935f8c/chrome/common/extensions/api/automation.idl
[modify] https://crrev.com/5f878089c1bafd22e0c3b003c22e7cdb05935f8c/chromecast/common/extensions_api/automation.idl
[modify] https://crrev.com/5f878089c1bafd22e0c3b003c22e7cdb05935f8c/content/app/strings/content_strings.grd
[modify] https://crrev.com/5f878089c1bafd22e0c3b003c22e7cdb05935f8c/content/browser/accessibility/browser_accessibility_android.cc
[modify] https://crrev.com/5f878089c1bafd22e0c3b003c22e7cdb05935f8c/content/renderer/accessibility/blink_ax_enum_conversion.cc
[modify] https://crrev.com/5f878089c1bafd22e0c3b003c22e7cdb05935f8c/content/shell/test_runner/web_ax_object_proxy.cc
[modify] https://crrev.com/5f878089c1bafd22e0c3b003c22e7cdb05935f8c/content/test/data/accessibility/html/del-expected-android.txt
[modify] https://crrev.com/5f878089c1bafd22e0c3b003c22e7cdb05935f8c/content/test/data/accessibility/html/del-expected-blink.txt
[modify] https://crrev.com/5f878089c1bafd22e0c3b003c22e7cdb05935f8c/content/test/data/accessibility/html/del-expected-mac.txt
[modify] https://crrev.com/5f878089c1bafd22e0c3b003c22e7cdb05935f8c/content/test/data/accessibility/html/del-expected-win.txt
[modify] https://crrev.com/5f878089c1bafd22e0c3b003c22e7cdb05935f8c/content/test/data/accessibility/html/del.html
[modify] https://crrev.com/5f878089c1bafd22e0c3b003c22e7cdb05935f8c/content/test/data/accessibility/html/frameset-expected-blink.txt
[modify] https://crrev.com/5f878089c1bafd22e0c3b003c22e7cdb05935f8c/content/test/data/accessibility/html/frameset-expected-mac.txt
[modify] https://crrev.com/5f878089c1bafd22e0c3b003c22e7cdb05935f8c/content/test/data/accessibility/html/frameset-expected-win.txt
[modify] https://crrev.com/5f878089c1bafd22e0c3b003c22e7cdb05935f8c/content/test/data/accessibility/html/ins-expected-blink.txt
[modify] https://crrev.com/5f878089c1bafd22e0c3b003c22e7cdb05935f8c/content/test/data/accessibility/html/ins-expected-mac.txt
[modify] https://crrev.com/5f878089c1bafd22e0c3b003c22e7cdb05935f8c/content/test/data/accessibility/html/ins-expected-win.txt
[modify] https://crrev.com/5f878089c1bafd22e0c3b003c22e7cdb05935f8c/content/test/data/accessibility/html/ins.html
[modify] https://crrev.com/5f878089c1bafd22e0c3b003c22e7cdb05935f8c/third_party/blink/public/web/web_ax_enums.h
[modify] https://crrev.com/5f878089c1bafd22e0c3b003c22e7cdb05935f8c/third_party/blink/renderer/modules/accessibility/ax_enums.cc
[modify] https://crrev.com/5f878089c1bafd22e0c3b003c22e7cdb05935f8c/third_party/blink/renderer/modules/accessibility/ax_enums.h
[modify] https://crrev.com/5f878089c1bafd22e0c3b003c22e7cdb05935f8c/third_party/blink/renderer/modules/accessibility/ax_layout_object.cc
[modify] https://crrev.com/5f878089c1bafd22e0c3b003c22e7cdb05935f8c/third_party/blink/renderer/modules/accessibility/ax_node_object.cc
[modify] https://crrev.com/5f878089c1bafd22e0c3b003c22e7cdb05935f8c/third_party/blink/renderer/modules/accessibility/ax_object.cc
[modify] https://crrev.com/5f878089c1bafd22e0c3b003c22e7cdb05935f8c/third_party/closure_compiler/externs/automation.js
[modify] https://crrev.com/5f878089c1bafd22e0c3b003c22e7cdb05935f8c/ui/accessibility/ax_enum_util.cc
[modify] https://crrev.com/5f878089c1bafd22e0c3b003c22e7cdb05935f8c/ui/accessibility/ax_enums.mojom
[modify] https://crrev.com/5f878089c1bafd22e0c3b003c22e7cdb05935f8c/ui/accessibility/platform/ax_platform_node_auralinux.cc
[modify] https://crrev.com/5f878089c1bafd22e0c3b003c22e7cdb05935f8c/ui/accessibility/platform/ax_platform_node_mac.mm
[modify] https://crrev.com/5f878089c1bafd22e0c3b003c22e7cdb05935f8c/ui/accessibility/platform/ax_platform_node_win.cc
[modify] https://crrev.com/5f878089c1bafd22e0c3b003c22e7cdb05935f8c/ui/strings/ui_strings.grd

We're almost there, just need the new ins/del roles for IA2, and then AT implementations.

IA2 issue is here: https://github.com/LinuxA11y/IAccessible2/issues/4

Project Member

Comment 10 by bugdroid1@chromium.org, May 30 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/b5a9dbf6b3f20e8d2283cc7095dcefc0b3ea3de8

commit b5a9dbf6b3f20e8d2283cc7095dcefc0b3ea3de8
Author: Aaron Leventhal <aleventhal@chromium.org>
Date: Wed May 30 18:52:33 2018

Use new IA2 roles for ins/del

Content insertion and deletion is an important missing semantic. There
are new IA2 roles for them.

TBR=thakis@chromium.org

Bug:  843744 
Change-Id: Ibb8ea1dbee58da18e7b238f64c66c4746228f3f3
Reviewed-on: https://chromium-review.googlesource.com/1078928
Commit-Queue: Aaron Leventhal <aleventhal@chromium.org>
Reviewed-by: Dominic Mazzoni <dmazzoni@chromium.org>
Cr-Commit-Position: refs/heads/master@{#562936}
[modify] https://crrev.com/b5a9dbf6b3f20e8d2283cc7095dcefc0b3ea3de8/content/browser/accessibility/accessibility_tree_formatter_utils_win.cc
[modify] https://crrev.com/b5a9dbf6b3f20e8d2283cc7095dcefc0b3ea3de8/content/test/data/accessibility/html/del-expected-win.txt
[modify] https://crrev.com/b5a9dbf6b3f20e8d2283cc7095dcefc0b3ea3de8/content/test/data/accessibility/html/frameset-expected-win.txt
[modify] https://crrev.com/b5a9dbf6b3f20e8d2283cc7095dcefc0b3ea3de8/content/test/data/accessibility/html/ins-expected-win.txt
[modify] https://crrev.com/b5a9dbf6b3f20e8d2283cc7095dcefc0b3ea3de8/third_party/iaccessible2/ia2_api_all.idl
[modify] https://crrev.com/b5a9dbf6b3f20e8d2283cc7095dcefc0b3ea3de8/third_party/win_build_output/midl/third_party/iaccessible2/x64/ia2_api_all.h
[modify] https://crrev.com/b5a9dbf6b3f20e8d2283cc7095dcefc0b3ea3de8/third_party/win_build_output/midl/third_party/iaccessible2/x64/ia2_api_all.tlb
[modify] https://crrev.com/b5a9dbf6b3f20e8d2283cc7095dcefc0b3ea3de8/third_party/win_build_output/midl/third_party/iaccessible2/x86/ia2_api_all.h
[modify] https://crrev.com/b5a9dbf6b3f20e8d2283cc7095dcefc0b3ea3de8/third_party/win_build_output/midl/third_party/iaccessible2/x86/ia2_api_all.tlb
[modify] https://crrev.com/b5a9dbf6b3f20e8d2283cc7095dcefc0b3ea3de8/ui/accessibility/platform/ax_platform_node_win.cc

Status: Fixed (was: Started)

Sign in to add a comment