New issue
Advanced search Search tips

Issue 651614 link

Starred by 1 user

Issue metadata

Status: Assigned
Owner:
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 1
Type: Bug
Team-Accessibility

Blocked on:
issue 848043

Blocking:
issue 816719



Sign in to add a comment

Simplify or remove accessibilityIsIgnored from blink accessibility

Project Member Reported by dmazz...@chromium.org, Sep 29 2016

Issue description

Computing accessibilityIsIgnored is a significant source of runtime issues and it's also responsible for the major differences between Chrome and Firefox accessibility trees.

Let's try to first simplify it dramatically (fewer tests / rules), then consider just setting a flag in Blink and then optionally skipping ignored nodes on the Chrome browser side, if at all.

This will help with performance work, a lot of performance regressions trace back to accessibilityIsIgnored.

 
Project Member

Comment 1 by bugdroid1@chromium.org, Sep 30 2016

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

commit 025c55dda400a5d2dd2ec435da38ec0d70a0d348
Author: dmazzoni <dmazzoni@chromium.org>
Date: Fri Sep 30 21:58:09 2016

Make LayoutTests ambivalent of of anonymous blocks

This change only improves some tests, no code is changed. Basically I
modified computeAccessibilityIsIgnored and had it ignore all anonymous
blocks, then fixed all tests that broke so they'd pass with or without
the change, then reverted the code change.

That way a future change that simplifies computeAccessibilityIsIgnored
won't break any LayoutTests, making it smaller
and easier to review.

BUG=651614

Review-Url: https://codereview.chromium.org/2382083002
Cr-Commit-Position: refs/heads/master@{#422235}

[modify] https://crrev.com/025c55dda400a5d2dd2ec435da38ec0d70a0d348/third_party/WebKit/LayoutTests/accessibility/aria-disabled.html
[modify] https://crrev.com/025c55dda400a5d2dd2ec435da38ec0d70a0d348/third_party/WebKit/LayoutTests/accessibility/aria-label.html
[modify] https://crrev.com/025c55dda400a5d2dd2ec435da38ec0d70a0d348/third_party/WebKit/LayoutTests/accessibility/aria-used-on-image-maps.html
[modify] https://crrev.com/025c55dda400a5d2dd2ec435da38ec0d70a0d348/third_party/WebKit/LayoutTests/accessibility/ignore-spacer-elements.html
[modify] https://crrev.com/025c55dda400a5d2dd2ec435da38ec0d70a0d348/third_party/WebKit/LayoutTests/accessibility/img-aria-button-alt-tag.html
[modify] https://crrev.com/025c55dda400a5d2dd2ec435da38ec0d70a0d348/third_party/WebKit/LayoutTests/accessibility/img-fallsback-to-title-expected.txt
[modify] https://crrev.com/025c55dda400a5d2dd2ec435da38ec0d70a0d348/third_party/WebKit/LayoutTests/accessibility/img-fallsback-to-title.html
[modify] https://crrev.com/025c55dda400a5d2dd2ec435da38ec0d70a0d348/third_party/WebKit/LayoutTests/accessibility/legend.html
[modify] https://crrev.com/025c55dda400a5d2dd2ec435da38ec0d70a0d348/third_party/WebKit/LayoutTests/accessibility/nochildren-elements.html
[modify] https://crrev.com/025c55dda400a5d2dd2ec435da38ec0d70a0d348/third_party/WebKit/LayoutTests/accessibility/presentation-owned-elements.html
[modify] https://crrev.com/025c55dda400a5d2dd2ec435da38ec0d70a0d348/third_party/WebKit/LayoutTests/accessibility/role-attribute.html

Project Member

Comment 2 by bugdroid1@chromium.org, Oct 19 2016

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

commit 9cbd8a4019e2d4799e85d96741418d79ea046e71
Author: dmazzoni <dmazzoni@chromium.org>
Date: Wed Oct 19 09:58:04 2016

Accessibility: Ignore all anonymous blocks

Anonymous blocks are an implementation detail of the
Blink layout tree. They're surprising and not useful in
the accessibility tree. Get rid of them by marking them
all as ignored.

While it may seem counterintuitive, this is actually
part of a longer-term plan to get rid of the idea of
ignoring nodes for accessibility, this will bring us
closer to just exposing the DOM tree plus generated
content, like FIrefox and IE do.

The code change here is tiny, most of the change is
rebasing or updating dozens and dozens of affected
tests. I deleted a couple of tests that specifically
tested corner cases involving anonymous blocks;
the whole point of this change is to not make this a
special case anymore.

Also updates this script, designed to automatically
pull test output from try servers to a local change:

tools/accessibility/rebase_dump_accessibility_tree_test.py

BUG=651614
CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:closure_compilation

Review-Url: https://chromiumcodereview.appspot.com/2387533003
Cr-Commit-Position: refs/heads/master@{#426138}

[modify] https://crrev.com/9cbd8a4019e2d4799e85d96741418d79ea046e71/chrome/browser/resources/chromeos/chromevox/cvox2/background/automation_util_test.extjs
[modify] https://crrev.com/9cbd8a4019e2d4799e85d96741418d79ea046e71/chrome/browser/resources/chromeos/chromevox/cvox2/background/cursors_test.extjs
[modify] https://crrev.com/9cbd8a4019e2d4799e85d96741418d79ea046e71/chrome/test/data/extensions/api_test/automation/tests/tabs/find.js
[modify] https://crrev.com/9cbd8a4019e2d4799e85d96741418d79ea046e71/chrome/test/data/extensions/api_test/automation/tests/tabs/location.js
[modify] https://crrev.com/9cbd8a4019e2d4799e85d96741418d79ea046e71/chrome/test/data/extensions/api_test/automation/tests/tabs/queryselector.js
[modify] https://crrev.com/9cbd8a4019e2d4799e85d96741418d79ea046e71/content/browser/accessibility/accessibility_ipc_error_browsertest.cc
[modify] https://crrev.com/9cbd8a4019e2d4799e85d96741418d79ea046e71/content/browser/accessibility/accessibility_tree_formatter.cc
[modify] https://crrev.com/9cbd8a4019e2d4799e85d96741418d79ea046e71/content/browser/accessibility/android_granularity_movement_browsertest.cc
[modify] https://crrev.com/9cbd8a4019e2d4799e85d96741418d79ea046e71/content/browser/accessibility/dump_accessibility_browsertest_base.cc
[modify] https://crrev.com/9cbd8a4019e2d4799e85d96741418d79ea046e71/content/renderer/accessibility/render_accessibility_impl_browsertest.cc
[modify] https://crrev.com/9cbd8a4019e2d4799e85d96741418d79ea046e71/content/test/data/accessibility/aria/aria-current-expected-win.txt
[modify] https://crrev.com/9cbd8a4019e2d4799e85d96741418d79ea046e71/content/test/data/accessibility/aria/aria-describedby-expected-android.txt
[modify] https://crrev.com/9cbd8a4019e2d4799e85d96741418d79ea046e71/content/test/data/accessibility/aria/aria-describedby-expected-mac.txt
[modify] https://crrev.com/9cbd8a4019e2d4799e85d96741418d79ea046e71/content/test/data/accessibility/aria/aria-describedby-expected-win.txt
[modify] https://crrev.com/9cbd8a4019e2d4799e85d96741418d79ea046e71/content/test/data/accessibility/aria/aria-labelledby-heading-expected-mac.txt
[modify] https://crrev.com/9cbd8a4019e2d4799e85d96741418d79ea046e71/content/test/data/accessibility/aria/aria-owns-expected-mac.txt
[modify] https://crrev.com/9cbd8a4019e2d4799e85d96741418d79ea046e71/content/test/data/accessibility/aria/aria-posinset-expected-android.txt
[modify] https://crrev.com/9cbd8a4019e2d4799e85d96741418d79ea046e71/content/test/data/accessibility/aria/aria-posinset-expected-mac.txt
[modify] https://crrev.com/9cbd8a4019e2d4799e85d96741418d79ea046e71/content/test/data/accessibility/aria/aria-posinset-expected-win.txt
[modify] https://crrev.com/9cbd8a4019e2d4799e85d96741418d79ea046e71/content/test/data/accessibility/aria/aria-separator-expected-mac.txt
[modify] https://crrev.com/9cbd8a4019e2d4799e85d96741418d79ea046e71/content/test/data/accessibility/aria/aria-separator-expected-win.txt
[modify] https://crrev.com/9cbd8a4019e2d4799e85d96741418d79ea046e71/content/test/data/accessibility/aria/aria-textbox-with-rich-text-expected-mac.txt
[modify] https://crrev.com/9cbd8a4019e2d4799e85d96741418d79ea046e71/content/test/data/accessibility/aria/aria-textbox-with-rich-text-expected-win.txt
[modify] https://crrev.com/9cbd8a4019e2d4799e85d96741418d79ea046e71/content/test/data/accessibility/aria/aria-textbox-with-selection-expected-android.txt
[modify] https://crrev.com/9cbd8a4019e2d4799e85d96741418d79ea046e71/content/test/data/accessibility/aria/aria-textbox-with-selection-expected-mac.txt
[delete] https://crrev.com/ee185e31223c53d9c0e2a24ef1603b84acf9f708/content/test/data/accessibility/aria/aria-textbox-with-selection-expected-win.txt
[modify] https://crrev.com/9cbd8a4019e2d4799e85d96741418d79ea046e71/content/test/data/accessibility/aria/aria-tooltip-expected-android.txt
[modify] https://crrev.com/9cbd8a4019e2d4799e85d96741418d79ea046e71/content/test/data/accessibility/aria/aria-tooltip-expected-mac.txt
[modify] https://crrev.com/9cbd8a4019e2d4799e85d96741418d79ea046e71/content/test/data/accessibility/aria/aria-tooltip-expected-win.txt
[modify] https://crrev.com/9cbd8a4019e2d4799e85d96741418d79ea046e71/content/test/data/accessibility/html/a-expected-auralinux.txt
[modify] https://crrev.com/9cbd8a4019e2d4799e85d96741418d79ea046e71/content/test/data/accessibility/html/a-name-calc-expected-android.txt
[modify] https://crrev.com/9cbd8a4019e2d4799e85d96741418d79ea046e71/content/test/data/accessibility/html/action-verbs-expected-blink.txt
[modify] https://crrev.com/9cbd8a4019e2d4799e85d96741418d79ea046e71/content/test/data/accessibility/html/button-name-calc-expected-android.txt
[modify] https://crrev.com/9cbd8a4019e2d4799e85d96741418d79ea046e71/content/test/data/accessibility/html/button-name-calc-expected-mac.txt
[modify] https://crrev.com/9cbd8a4019e2d4799e85d96741418d79ea046e71/content/test/data/accessibility/html/button-name-calc-expected-win.txt
[modify] https://crrev.com/9cbd8a4019e2d4799e85d96741418d79ea046e71/content/test/data/accessibility/html/checkbox-name-calc-expected-android.txt
[modify] https://crrev.com/9cbd8a4019e2d4799e85d96741418d79ea046e71/content/test/data/accessibility/html/checkbox-name-calc-expected-mac.txt
[modify] https://crrev.com/9cbd8a4019e2d4799e85d96741418d79ea046e71/content/test/data/accessibility/html/checkbox-name-calc-expected-win.txt
[modify] https://crrev.com/9cbd8a4019e2d4799e85d96741418d79ea046e71/content/test/data/accessibility/html/cite-expected-android.txt
[modify] https://crrev.com/9cbd8a4019e2d4799e85d96741418d79ea046e71/content/test/data/accessibility/html/cite-expected-mac.txt
[modify] https://crrev.com/9cbd8a4019e2d4799e85d96741418d79ea046e71/content/test/data/accessibility/html/cite-expected-win.txt
[modify] https://crrev.com/9cbd8a4019e2d4799e85d96741418d79ea046e71/content/test/data/accessibility/html/contenteditable-with-embedded-contenteditables-expected-mac.txt
[modify] https://crrev.com/9cbd8a4019e2d4799e85d96741418d79ea046e71/content/test/data/accessibility/html/contenteditable-with-embedded-contenteditables-expected-win.txt
[modify] https://crrev.com/9cbd8a4019e2d4799e85d96741418d79ea046e71/content/test/data/accessibility/html/element-class-id-src-attr-expected-android.txt
[modify] https://crrev.com/9cbd8a4019e2d4799e85d96741418d79ea046e71/content/test/data/accessibility/html/element-class-id-src-attr-expected-mac.txt
[modify] https://crrev.com/9cbd8a4019e2d4799e85d96741418d79ea046e71/content/test/data/accessibility/html/element-class-id-src-attr-expected-win.txt
[modify] https://crrev.com/9cbd8a4019e2d4799e85d96741418d79ea046e71/content/test/data/accessibility/html/figcaption-expected-android.txt
[modify] https://crrev.com/9cbd8a4019e2d4799e85d96741418d79ea046e71/content/test/data/accessibility/html/figcaption-expected-mac.txt
[modify] https://crrev.com/9cbd8a4019e2d4799e85d96741418d79ea046e71/content/test/data/accessibility/html/figcaption-expected-win.txt
[modify] https://crrev.com/9cbd8a4019e2d4799e85d96741418d79ea046e71/content/test/data/accessibility/html/iframe-cross-process-expected-blink.txt
[modify] https://crrev.com/9cbd8a4019e2d4799e85d96741418d79ea046e71/content/test/data/accessibility/html/input-button-in-menu-expected-win.txt
[modify] https://crrev.com/9cbd8a4019e2d4799e85d96741418d79ea046e71/content/test/data/accessibility/html/input-radio-expected-android.txt
[modify] https://crrev.com/9cbd8a4019e2d4799e85d96741418d79ea046e71/content/test/data/accessibility/html/input-radio-expected-mac.txt
[modify] https://crrev.com/9cbd8a4019e2d4799e85d96741418d79ea046e71/content/test/data/accessibility/html/input-radio-expected-win.txt
[modify] https://crrev.com/9cbd8a4019e2d4799e85d96741418d79ea046e71/content/test/data/accessibility/html/input-text-name-calc-expected-android.txt
[modify] https://crrev.com/9cbd8a4019e2d4799e85d96741418d79ea046e71/content/test/data/accessibility/html/input-text-name-calc-expected-win.txt
[modify] https://crrev.com/9cbd8a4019e2d4799e85d96741418d79ea046e71/content/test/data/accessibility/html/legend-expected-android.txt
[modify] https://crrev.com/9cbd8a4019e2d4799e85d96741418d79ea046e71/content/test/data/accessibility/html/legend-expected-mac.txt
[modify] https://crrev.com/9cbd8a4019e2d4799e85d96741418d79ea046e71/content/test/data/accessibility/html/legend-expected-win.txt
[modify] https://crrev.com/9cbd8a4019e2d4799e85d96741418d79ea046e71/content/test/data/accessibility/html/modal-dialog-closed-expected-mac.txt
[modify] https://crrev.com/9cbd8a4019e2d4799e85d96741418d79ea046e71/content/test/data/accessibility/html/modal-dialog-closed-expected-win.txt
[modify] https://crrev.com/9cbd8a4019e2d4799e85d96741418d79ea046e71/content/test/data/accessibility/html/p-expected-blink.txt
[modify] https://crrev.com/9cbd8a4019e2d4799e85d96741418d79ea046e71/content/test/data/accessibility/html/p-expected-mac.txt
[modify] https://crrev.com/9cbd8a4019e2d4799e85d96741418d79ea046e71/content/test/data/accessibility/html/p-expected-win.txt
[modify] https://crrev.com/9cbd8a4019e2d4799e85d96741418d79ea046e71/content/test/data/accessibility/html/ruby-expected-mac.txt
[modify] https://crrev.com/9cbd8a4019e2d4799e85d96741418d79ea046e71/content/test/data/accessibility/html/ruby-expected-win.txt
[modify] https://crrev.com/9cbd8a4019e2d4799e85d96741418d79ea046e71/content/test/data/accessibility/html/textarea-expected-mac.txt
[modify] https://crrev.com/9cbd8a4019e2d4799e85d96741418d79ea046e71/content/test/data/accessibility/html/textarea-expected-win.txt
[modify] https://crrev.com/9cbd8a4019e2d4799e85d96741418d79ea046e71/content/test/data/accessibility/html/textarea-read-only-expected-mac.txt
[modify] https://crrev.com/9cbd8a4019e2d4799e85d96741418d79ea046e71/content/test/data/accessibility/html/textarea-read-only-expected-win.txt
[modify] https://crrev.com/9cbd8a4019e2d4799e85d96741418d79ea046e71/content/test/data/accessibility/html/textarea-with-selection-expected-mac.txt
[modify] https://crrev.com/9cbd8a4019e2d4799e85d96741418d79ea046e71/content/test/data/accessibility/html/textarea-with-selection-expected-win.txt
[modify] https://crrev.com/9cbd8a4019e2d4799e85d96741418d79ea046e71/third_party/WebKit/LayoutTests/accessibility/element-role-mapping-normal-expected.txt
[modify] https://crrev.com/9cbd8a4019e2d4799e85d96741418d79ea046e71/third_party/WebKit/Source/modules/accessibility/AXLayoutObject.cpp
[modify] https://crrev.com/9cbd8a4019e2d4799e85d96741418d79ea046e71/tools/accessibility/rebase_dump_accessibility_tree_test.py

Project Member

Comment 3 by bugdroid1@chromium.org, Oct 21 2016

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

commit e4db7ae216888672805a38d8f8fee54c836357c9
Author: David Tseng <dtseng@chromium.org>
Date: Fri Oct 21 06:06:15 2016

Revert of Accessibility: Ignore all anonymous blocks (patchset #15 id:280001 of https://codereview.chromium.org/2387533003/ )

Reason for revert:
 crbug.com/658045 

Original issue's description:
> Accessibility: Ignore all anonymous blocks
>
> Anonymous blocks are an implementation detail of the
> Blink layout tree. They're surprising and not useful in
> the accessibility tree. Get rid of them by marking them
> all as ignored.
>
> While it may seem counterintuitive, this is actually
> part of a longer-term plan to get rid of the idea of
> ignoring nodes for accessibility, this will bring us
> closer to just exposing the DOM tree plus generated
> content, like FIrefox and IE do.
>
> The code change here is tiny, most of the change is
> rebasing or updating dozens and dozens of affected
> tests. I deleted a couple of tests that specifically
> tested corner cases involving anonymous blocks;
> the whole point of this change is to not make this a
> special case anymore.
>
> Also updates this script, designed to automatically
> pull test output from try servers to a local change:
>
> tools/accessibility/rebase_dump_accessibility_tree_test.py
>
> BUG=651614
> CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:closure_compilation

TBR=aboxhall@chromium.org,dmazzoni@chromium.org
# Not skipping CQ checks because original CL landed more than 1 days ago.
BUG=651614
CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:closure_compilation

Review URL: https://codereview.chromium.org/2440833002 .

Cr-Commit-Position: refs/heads/master@{#426736}

[modify] https://crrev.com/e4db7ae216888672805a38d8f8fee54c836357c9/chrome/browser/resources/chromeos/chromevox/cvox2/background/automation_util_test.extjs
[modify] https://crrev.com/e4db7ae216888672805a38d8f8fee54c836357c9/chrome/browser/resources/chromeos/chromevox/cvox2/background/cursors_test.extjs
[modify] https://crrev.com/e4db7ae216888672805a38d8f8fee54c836357c9/chrome/test/data/extensions/api_test/automation/tests/tabs/find.js
[modify] https://crrev.com/e4db7ae216888672805a38d8f8fee54c836357c9/chrome/test/data/extensions/api_test/automation/tests/tabs/location.js
[modify] https://crrev.com/e4db7ae216888672805a38d8f8fee54c836357c9/chrome/test/data/extensions/api_test/automation/tests/tabs/queryselector.js
[modify] https://crrev.com/e4db7ae216888672805a38d8f8fee54c836357c9/content/browser/accessibility/accessibility_ipc_error_browsertest.cc
[modify] https://crrev.com/e4db7ae216888672805a38d8f8fee54c836357c9/content/browser/accessibility/accessibility_tree_formatter.cc
[modify] https://crrev.com/e4db7ae216888672805a38d8f8fee54c836357c9/content/browser/accessibility/android_granularity_movement_browsertest.cc
[modify] https://crrev.com/e4db7ae216888672805a38d8f8fee54c836357c9/content/browser/accessibility/dump_accessibility_browsertest_base.cc
[modify] https://crrev.com/e4db7ae216888672805a38d8f8fee54c836357c9/content/renderer/accessibility/render_accessibility_impl_browsertest.cc
[modify] https://crrev.com/e4db7ae216888672805a38d8f8fee54c836357c9/content/test/data/accessibility/aria/aria-current-expected-win.txt
[modify] https://crrev.com/e4db7ae216888672805a38d8f8fee54c836357c9/content/test/data/accessibility/aria/aria-describedby-expected-android.txt
[modify] https://crrev.com/e4db7ae216888672805a38d8f8fee54c836357c9/content/test/data/accessibility/aria/aria-describedby-expected-mac.txt
[modify] https://crrev.com/e4db7ae216888672805a38d8f8fee54c836357c9/content/test/data/accessibility/aria/aria-describedby-expected-win.txt
[modify] https://crrev.com/e4db7ae216888672805a38d8f8fee54c836357c9/content/test/data/accessibility/aria/aria-labelledby-heading-expected-mac.txt
[modify] https://crrev.com/e4db7ae216888672805a38d8f8fee54c836357c9/content/test/data/accessibility/aria/aria-owns-expected-mac.txt
[modify] https://crrev.com/e4db7ae216888672805a38d8f8fee54c836357c9/content/test/data/accessibility/aria/aria-posinset-expected-android.txt
[modify] https://crrev.com/e4db7ae216888672805a38d8f8fee54c836357c9/content/test/data/accessibility/aria/aria-posinset-expected-mac.txt
[modify] https://crrev.com/e4db7ae216888672805a38d8f8fee54c836357c9/content/test/data/accessibility/aria/aria-posinset-expected-win.txt
[modify] https://crrev.com/e4db7ae216888672805a38d8f8fee54c836357c9/content/test/data/accessibility/aria/aria-separator-expected-mac.txt
[modify] https://crrev.com/e4db7ae216888672805a38d8f8fee54c836357c9/content/test/data/accessibility/aria/aria-separator-expected-win.txt
[modify] https://crrev.com/e4db7ae216888672805a38d8f8fee54c836357c9/content/test/data/accessibility/aria/aria-textbox-with-rich-text-expected-mac.txt
[modify] https://crrev.com/e4db7ae216888672805a38d8f8fee54c836357c9/content/test/data/accessibility/aria/aria-textbox-with-rich-text-expected-win.txt
[modify] https://crrev.com/e4db7ae216888672805a38d8f8fee54c836357c9/content/test/data/accessibility/aria/aria-textbox-with-selection-expected-android.txt
[modify] https://crrev.com/e4db7ae216888672805a38d8f8fee54c836357c9/content/test/data/accessibility/aria/aria-textbox-with-selection-expected-mac.txt
[add] https://crrev.com/e4db7ae216888672805a38d8f8fee54c836357c9/content/test/data/accessibility/aria/aria-textbox-with-selection-expected-win.txt
[modify] https://crrev.com/e4db7ae216888672805a38d8f8fee54c836357c9/content/test/data/accessibility/aria/aria-tooltip-expected-android.txt
[modify] https://crrev.com/e4db7ae216888672805a38d8f8fee54c836357c9/content/test/data/accessibility/aria/aria-tooltip-expected-mac.txt
[modify] https://crrev.com/e4db7ae216888672805a38d8f8fee54c836357c9/content/test/data/accessibility/aria/aria-tooltip-expected-win.txt
[modify] https://crrev.com/e4db7ae216888672805a38d8f8fee54c836357c9/content/test/data/accessibility/html/a-expected-auralinux.txt
[modify] https://crrev.com/e4db7ae216888672805a38d8f8fee54c836357c9/content/test/data/accessibility/html/a-name-calc-expected-android.txt
[modify] https://crrev.com/e4db7ae216888672805a38d8f8fee54c836357c9/content/test/data/accessibility/html/action-verbs-expected-blink.txt
[modify] https://crrev.com/e4db7ae216888672805a38d8f8fee54c836357c9/content/test/data/accessibility/html/button-name-calc-expected-android.txt
[modify] https://crrev.com/e4db7ae216888672805a38d8f8fee54c836357c9/content/test/data/accessibility/html/button-name-calc-expected-mac.txt
[modify] https://crrev.com/e4db7ae216888672805a38d8f8fee54c836357c9/content/test/data/accessibility/html/button-name-calc-expected-win.txt
[modify] https://crrev.com/e4db7ae216888672805a38d8f8fee54c836357c9/content/test/data/accessibility/html/checkbox-name-calc-expected-android.txt
[modify] https://crrev.com/e4db7ae216888672805a38d8f8fee54c836357c9/content/test/data/accessibility/html/checkbox-name-calc-expected-mac.txt
[modify] https://crrev.com/e4db7ae216888672805a38d8f8fee54c836357c9/content/test/data/accessibility/html/checkbox-name-calc-expected-win.txt
[modify] https://crrev.com/e4db7ae216888672805a38d8f8fee54c836357c9/content/test/data/accessibility/html/cite-expected-android.txt
[modify] https://crrev.com/e4db7ae216888672805a38d8f8fee54c836357c9/content/test/data/accessibility/html/cite-expected-mac.txt
[modify] https://crrev.com/e4db7ae216888672805a38d8f8fee54c836357c9/content/test/data/accessibility/html/cite-expected-win.txt
[modify] https://crrev.com/e4db7ae216888672805a38d8f8fee54c836357c9/content/test/data/accessibility/html/contenteditable-with-embedded-contenteditables-expected-mac.txt
[modify] https://crrev.com/e4db7ae216888672805a38d8f8fee54c836357c9/content/test/data/accessibility/html/contenteditable-with-embedded-contenteditables-expected-win.txt
[modify] https://crrev.com/e4db7ae216888672805a38d8f8fee54c836357c9/content/test/data/accessibility/html/element-class-id-src-attr-expected-android.txt
[modify] https://crrev.com/e4db7ae216888672805a38d8f8fee54c836357c9/content/test/data/accessibility/html/element-class-id-src-attr-expected-mac.txt
[modify] https://crrev.com/e4db7ae216888672805a38d8f8fee54c836357c9/content/test/data/accessibility/html/element-class-id-src-attr-expected-win.txt
[modify] https://crrev.com/e4db7ae216888672805a38d8f8fee54c836357c9/content/test/data/accessibility/html/figcaption-expected-android.txt
[modify] https://crrev.com/e4db7ae216888672805a38d8f8fee54c836357c9/content/test/data/accessibility/html/figcaption-expected-mac.txt
[modify] https://crrev.com/e4db7ae216888672805a38d8f8fee54c836357c9/content/test/data/accessibility/html/figcaption-expected-win.txt
[modify] https://crrev.com/e4db7ae216888672805a38d8f8fee54c836357c9/content/test/data/accessibility/html/iframe-cross-process-expected-blink.txt
[modify] https://crrev.com/e4db7ae216888672805a38d8f8fee54c836357c9/content/test/data/accessibility/html/input-button-in-menu-expected-win.txt
[modify] https://crrev.com/e4db7ae216888672805a38d8f8fee54c836357c9/content/test/data/accessibility/html/input-radio-expected-android.txt
[modify] https://crrev.com/e4db7ae216888672805a38d8f8fee54c836357c9/content/test/data/accessibility/html/input-radio-expected-mac.txt
[modify] https://crrev.com/e4db7ae216888672805a38d8f8fee54c836357c9/content/test/data/accessibility/html/input-radio-expected-win.txt
[modify] https://crrev.com/e4db7ae216888672805a38d8f8fee54c836357c9/content/test/data/accessibility/html/input-text-name-calc-expected-android.txt
[modify] https://crrev.com/e4db7ae216888672805a38d8f8fee54c836357c9/content/test/data/accessibility/html/input-text-name-calc-expected-win.txt
[modify] https://crrev.com/e4db7ae216888672805a38d8f8fee54c836357c9/content/test/data/accessibility/html/legend-expected-android.txt
[modify] https://crrev.com/e4db7ae216888672805a38d8f8fee54c836357c9/content/test/data/accessibility/html/legend-expected-mac.txt
[modify] https://crrev.com/e4db7ae216888672805a38d8f8fee54c836357c9/content/test/data/accessibility/html/legend-expected-win.txt
[modify] https://crrev.com/e4db7ae216888672805a38d8f8fee54c836357c9/content/test/data/accessibility/html/modal-dialog-closed-expected-mac.txt
[modify] https://crrev.com/e4db7ae216888672805a38d8f8fee54c836357c9/content/test/data/accessibility/html/modal-dialog-closed-expected-win.txt
[modify] https://crrev.com/e4db7ae216888672805a38d8f8fee54c836357c9/content/test/data/accessibility/html/p-expected-blink.txt
[modify] https://crrev.com/e4db7ae216888672805a38d8f8fee54c836357c9/content/test/data/accessibility/html/p-expected-mac.txt
[modify] https://crrev.com/e4db7ae216888672805a38d8f8fee54c836357c9/content/test/data/accessibility/html/p-expected-win.txt
[modify] https://crrev.com/e4db7ae216888672805a38d8f8fee54c836357c9/content/test/data/accessibility/html/ruby-expected-mac.txt
[modify] https://crrev.com/e4db7ae216888672805a38d8f8fee54c836357c9/content/test/data/accessibility/html/ruby-expected-win.txt
[modify] https://crrev.com/e4db7ae216888672805a38d8f8fee54c836357c9/content/test/data/accessibility/html/textarea-expected-mac.txt
[modify] https://crrev.com/e4db7ae216888672805a38d8f8fee54c836357c9/content/test/data/accessibility/html/textarea-expected-win.txt
[modify] https://crrev.com/e4db7ae216888672805a38d8f8fee54c836357c9/content/test/data/accessibility/html/textarea-read-only-expected-mac.txt
[modify] https://crrev.com/e4db7ae216888672805a38d8f8fee54c836357c9/content/test/data/accessibility/html/textarea-read-only-expected-win.txt
[modify] https://crrev.com/e4db7ae216888672805a38d8f8fee54c836357c9/content/test/data/accessibility/html/textarea-with-selection-expected-mac.txt
[modify] https://crrev.com/e4db7ae216888672805a38d8f8fee54c836357c9/content/test/data/accessibility/html/textarea-with-selection-expected-win.txt
[modify] https://crrev.com/e4db7ae216888672805a38d8f8fee54c836357c9/third_party/WebKit/LayoutTests/accessibility/element-role-mapping-normal-expected.txt
[modify] https://crrev.com/e4db7ae216888672805a38d8f8fee54c836357c9/third_party/WebKit/Source/modules/accessibility/AXLayoutObject.cpp
[modify] https://crrev.com/e4db7ae216888672805a38d8f8fee54c836357c9/tools/accessibility/rebase_dump_accessibility_tree_test.py

Project Member

Comment 4 by bugdroid1@chromium.org, Oct 21 2016

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

commit 81dd4d6be788b5cb8871fcecf0b978f9e93d2e72
Author: dtseng <dtseng@chromium.org>
Date: Fri Oct 21 21:04:07 2016

Reland of Accessibility: Ignore all anonymous blocks (patchset #5 id:360001 of https://codereview.chromium.org/2440833002/ )

Reason for revert:
Turns out this wasn't the root cause of the bug; even though it was the result of a bisect; sorry for the noise

Original issue's description:
> Revert of Accessibility: Ignore all anonymous blocks (patchset #15 id:280001 of https://codereview.chromium.org/2387533003/ )
>
> Reason for revert:
>  crbug.com/658045 
>
> Original issue's description:
> > Accessibility: Ignore all anonymous blocks
> >
> > Anonymous blocks are an implementation detail of the
> > Blink layout tree. They're surprising and not useful in
> > the accessibility tree. Get rid of them by marking them
> > all as ignored.
> >
> > While it may seem counterintuitive, this is actually
> > part of a longer-term plan to get rid of the idea of
> > ignoring nodes for accessibility, this will bring us
> > closer to just exposing the DOM tree plus generated
> > content, like FIrefox and IE do.
> >
> > The code change here is tiny, most of the change is
> > rebasing or updating dozens and dozens of affected
> > tests. I deleted a couple of tests that specifically
> > tested corner cases involving anonymous blocks;
> > the whole point of this change is to not make this a
> > special case anymore.
> >
> > Also updates this script, designed to automatically
> > pull test output from try servers to a local change:
> >
> > tools/accessibility/rebase_dump_accessibility_tree_test.py
> >
> > BUG=651614
> > CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:closure_compilation
>
> TBR=aboxhall@chromium.org,dmazzoni@chromium.org
> # Not skipping CQ checks because original CL landed more than 1 days ago.
> BUG=651614
> CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:closure_compilation
>
> Committed: https://crrev.com/e4db7ae216888672805a38d8f8fee54c836357c9
> Cr-Commit-Position: refs/heads/master@{#426736}

TBR=aboxhall@chromium.org,dmazzoni@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=651614
CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:closure_compilation

Review-Url: https://chromiumcodereview.appspot.com/2439203003
Cr-Commit-Position: refs/heads/master@{#426888}

[modify] https://crrev.com/81dd4d6be788b5cb8871fcecf0b978f9e93d2e72/chrome/browser/resources/chromeos/chromevox/cvox2/background/automation_util_test.extjs
[modify] https://crrev.com/81dd4d6be788b5cb8871fcecf0b978f9e93d2e72/chrome/browser/resources/chromeos/chromevox/cvox2/background/cursors_test.extjs
[modify] https://crrev.com/81dd4d6be788b5cb8871fcecf0b978f9e93d2e72/chrome/test/data/extensions/api_test/automation/tests/tabs/find.js
[modify] https://crrev.com/81dd4d6be788b5cb8871fcecf0b978f9e93d2e72/chrome/test/data/extensions/api_test/automation/tests/tabs/location.js
[modify] https://crrev.com/81dd4d6be788b5cb8871fcecf0b978f9e93d2e72/chrome/test/data/extensions/api_test/automation/tests/tabs/queryselector.js
[modify] https://crrev.com/81dd4d6be788b5cb8871fcecf0b978f9e93d2e72/content/browser/accessibility/accessibility_ipc_error_browsertest.cc
[modify] https://crrev.com/81dd4d6be788b5cb8871fcecf0b978f9e93d2e72/content/browser/accessibility/accessibility_tree_formatter.cc
[modify] https://crrev.com/81dd4d6be788b5cb8871fcecf0b978f9e93d2e72/content/browser/accessibility/android_granularity_movement_browsertest.cc
[modify] https://crrev.com/81dd4d6be788b5cb8871fcecf0b978f9e93d2e72/content/browser/accessibility/dump_accessibility_browsertest_base.cc
[modify] https://crrev.com/81dd4d6be788b5cb8871fcecf0b978f9e93d2e72/content/renderer/accessibility/render_accessibility_impl_browsertest.cc
[modify] https://crrev.com/81dd4d6be788b5cb8871fcecf0b978f9e93d2e72/content/test/data/accessibility/aria/aria-current-expected-win.txt
[modify] https://crrev.com/81dd4d6be788b5cb8871fcecf0b978f9e93d2e72/content/test/data/accessibility/aria/aria-describedby-expected-android.txt
[modify] https://crrev.com/81dd4d6be788b5cb8871fcecf0b978f9e93d2e72/content/test/data/accessibility/aria/aria-describedby-expected-mac.txt
[modify] https://crrev.com/81dd4d6be788b5cb8871fcecf0b978f9e93d2e72/content/test/data/accessibility/aria/aria-describedby-expected-win.txt
[modify] https://crrev.com/81dd4d6be788b5cb8871fcecf0b978f9e93d2e72/content/test/data/accessibility/aria/aria-labelledby-heading-expected-mac.txt
[modify] https://crrev.com/81dd4d6be788b5cb8871fcecf0b978f9e93d2e72/content/test/data/accessibility/aria/aria-owns-expected-mac.txt
[modify] https://crrev.com/81dd4d6be788b5cb8871fcecf0b978f9e93d2e72/content/test/data/accessibility/aria/aria-posinset-expected-android.txt
[modify] https://crrev.com/81dd4d6be788b5cb8871fcecf0b978f9e93d2e72/content/test/data/accessibility/aria/aria-posinset-expected-mac.txt
[modify] https://crrev.com/81dd4d6be788b5cb8871fcecf0b978f9e93d2e72/content/test/data/accessibility/aria/aria-posinset-expected-win.txt
[modify] https://crrev.com/81dd4d6be788b5cb8871fcecf0b978f9e93d2e72/content/test/data/accessibility/aria/aria-separator-expected-mac.txt
[modify] https://crrev.com/81dd4d6be788b5cb8871fcecf0b978f9e93d2e72/content/test/data/accessibility/aria/aria-separator-expected-win.txt
[modify] https://crrev.com/81dd4d6be788b5cb8871fcecf0b978f9e93d2e72/content/test/data/accessibility/aria/aria-textbox-with-rich-text-expected-mac.txt
[modify] https://crrev.com/81dd4d6be788b5cb8871fcecf0b978f9e93d2e72/content/test/data/accessibility/aria/aria-textbox-with-rich-text-expected-win.txt
[modify] https://crrev.com/81dd4d6be788b5cb8871fcecf0b978f9e93d2e72/content/test/data/accessibility/aria/aria-textbox-with-selection-expected-android.txt
[modify] https://crrev.com/81dd4d6be788b5cb8871fcecf0b978f9e93d2e72/content/test/data/accessibility/aria/aria-textbox-with-selection-expected-mac.txt
[delete] https://crrev.com/9da153a7eb5aa04ccce9d233403b2fb6235969f9/content/test/data/accessibility/aria/aria-textbox-with-selection-expected-win.txt
[modify] https://crrev.com/81dd4d6be788b5cb8871fcecf0b978f9e93d2e72/content/test/data/accessibility/aria/aria-tooltip-expected-android.txt
[modify] https://crrev.com/81dd4d6be788b5cb8871fcecf0b978f9e93d2e72/content/test/data/accessibility/aria/aria-tooltip-expected-mac.txt
[modify] https://crrev.com/81dd4d6be788b5cb8871fcecf0b978f9e93d2e72/content/test/data/accessibility/aria/aria-tooltip-expected-win.txt
[modify] https://crrev.com/81dd4d6be788b5cb8871fcecf0b978f9e93d2e72/content/test/data/accessibility/html/a-expected-auralinux.txt
[modify] https://crrev.com/81dd4d6be788b5cb8871fcecf0b978f9e93d2e72/content/test/data/accessibility/html/a-name-calc-expected-android.txt
[modify] https://crrev.com/81dd4d6be788b5cb8871fcecf0b978f9e93d2e72/content/test/data/accessibility/html/action-verbs-expected-blink.txt
[modify] https://crrev.com/81dd4d6be788b5cb8871fcecf0b978f9e93d2e72/content/test/data/accessibility/html/button-name-calc-expected-android.txt
[modify] https://crrev.com/81dd4d6be788b5cb8871fcecf0b978f9e93d2e72/content/test/data/accessibility/html/button-name-calc-expected-mac.txt
[modify] https://crrev.com/81dd4d6be788b5cb8871fcecf0b978f9e93d2e72/content/test/data/accessibility/html/button-name-calc-expected-win.txt
[modify] https://crrev.com/81dd4d6be788b5cb8871fcecf0b978f9e93d2e72/content/test/data/accessibility/html/checkbox-name-calc-expected-android.txt
[modify] https://crrev.com/81dd4d6be788b5cb8871fcecf0b978f9e93d2e72/content/test/data/accessibility/html/checkbox-name-calc-expected-mac.txt
[modify] https://crrev.com/81dd4d6be788b5cb8871fcecf0b978f9e93d2e72/content/test/data/accessibility/html/checkbox-name-calc-expected-win.txt
[modify] https://crrev.com/81dd4d6be788b5cb8871fcecf0b978f9e93d2e72/content/test/data/accessibility/html/cite-expected-android.txt
[modify] https://crrev.com/81dd4d6be788b5cb8871fcecf0b978f9e93d2e72/content/test/data/accessibility/html/cite-expected-mac.txt
[modify] https://crrev.com/81dd4d6be788b5cb8871fcecf0b978f9e93d2e72/content/test/data/accessibility/html/cite-expected-win.txt
[modify] https://crrev.com/81dd4d6be788b5cb8871fcecf0b978f9e93d2e72/content/test/data/accessibility/html/contenteditable-with-embedded-contenteditables-expected-mac.txt
[modify] https://crrev.com/81dd4d6be788b5cb8871fcecf0b978f9e93d2e72/content/test/data/accessibility/html/contenteditable-with-embedded-contenteditables-expected-win.txt
[modify] https://crrev.com/81dd4d6be788b5cb8871fcecf0b978f9e93d2e72/content/test/data/accessibility/html/element-class-id-src-attr-expected-android.txt
[modify] https://crrev.com/81dd4d6be788b5cb8871fcecf0b978f9e93d2e72/content/test/data/accessibility/html/element-class-id-src-attr-expected-mac.txt
[modify] https://crrev.com/81dd4d6be788b5cb8871fcecf0b978f9e93d2e72/content/test/data/accessibility/html/element-class-id-src-attr-expected-win.txt
[modify] https://crrev.com/81dd4d6be788b5cb8871fcecf0b978f9e93d2e72/content/test/data/accessibility/html/figcaption-expected-android.txt
[modify] https://crrev.com/81dd4d6be788b5cb8871fcecf0b978f9e93d2e72/content/test/data/accessibility/html/figcaption-expected-mac.txt
[modify] https://crrev.com/81dd4d6be788b5cb8871fcecf0b978f9e93d2e72/content/test/data/accessibility/html/figcaption-expected-win.txt
[modify] https://crrev.com/81dd4d6be788b5cb8871fcecf0b978f9e93d2e72/content/test/data/accessibility/html/iframe-cross-process-expected-blink.txt
[modify] https://crrev.com/81dd4d6be788b5cb8871fcecf0b978f9e93d2e72/content/test/data/accessibility/html/input-button-in-menu-expected-win.txt
[modify] https://crrev.com/81dd4d6be788b5cb8871fcecf0b978f9e93d2e72/content/test/data/accessibility/html/input-radio-expected-android.txt
[modify] https://crrev.com/81dd4d6be788b5cb8871fcecf0b978f9e93d2e72/content/test/data/accessibility/html/input-radio-expected-mac.txt
[modify] https://crrev.com/81dd4d6be788b5cb8871fcecf0b978f9e93d2e72/content/test/data/accessibility/html/input-radio-expected-win.txt
[modify] https://crrev.com/81dd4d6be788b5cb8871fcecf0b978f9e93d2e72/content/test/data/accessibility/html/input-text-name-calc-expected-android.txt
[modify] https://crrev.com/81dd4d6be788b5cb8871fcecf0b978f9e93d2e72/content/test/data/accessibility/html/input-text-name-calc-expected-win.txt
[modify] https://crrev.com/81dd4d6be788b5cb8871fcecf0b978f9e93d2e72/content/test/data/accessibility/html/legend-expected-android.txt
[modify] https://crrev.com/81dd4d6be788b5cb8871fcecf0b978f9e93d2e72/content/test/data/accessibility/html/legend-expected-mac.txt
[modify] https://crrev.com/81dd4d6be788b5cb8871fcecf0b978f9e93d2e72/content/test/data/accessibility/html/legend-expected-win.txt
[modify] https://crrev.com/81dd4d6be788b5cb8871fcecf0b978f9e93d2e72/content/test/data/accessibility/html/modal-dialog-closed-expected-mac.txt
[modify] https://crrev.com/81dd4d6be788b5cb8871fcecf0b978f9e93d2e72/content/test/data/accessibility/html/modal-dialog-closed-expected-win.txt
[modify] https://crrev.com/81dd4d6be788b5cb8871fcecf0b978f9e93d2e72/content/test/data/accessibility/html/p-expected-blink.txt
[modify] https://crrev.com/81dd4d6be788b5cb8871fcecf0b978f9e93d2e72/content/test/data/accessibility/html/p-expected-mac.txt
[modify] https://crrev.com/81dd4d6be788b5cb8871fcecf0b978f9e93d2e72/content/test/data/accessibility/html/p-expected-win.txt
[modify] https://crrev.com/81dd4d6be788b5cb8871fcecf0b978f9e93d2e72/content/test/data/accessibility/html/ruby-expected-mac.txt
[modify] https://crrev.com/81dd4d6be788b5cb8871fcecf0b978f9e93d2e72/content/test/data/accessibility/html/ruby-expected-win.txt
[modify] https://crrev.com/81dd4d6be788b5cb8871fcecf0b978f9e93d2e72/content/test/data/accessibility/html/textarea-expected-mac.txt
[modify] https://crrev.com/81dd4d6be788b5cb8871fcecf0b978f9e93d2e72/content/test/data/accessibility/html/textarea-expected-win.txt
[modify] https://crrev.com/81dd4d6be788b5cb8871fcecf0b978f9e93d2e72/content/test/data/accessibility/html/textarea-read-only-expected-mac.txt
[modify] https://crrev.com/81dd4d6be788b5cb8871fcecf0b978f9e93d2e72/content/test/data/accessibility/html/textarea-read-only-expected-win.txt
[modify] https://crrev.com/81dd4d6be788b5cb8871fcecf0b978f9e93d2e72/content/test/data/accessibility/html/textarea-with-selection-expected-mac.txt
[modify] https://crrev.com/81dd4d6be788b5cb8871fcecf0b978f9e93d2e72/content/test/data/accessibility/html/textarea-with-selection-expected-win.txt
[modify] https://crrev.com/81dd4d6be788b5cb8871fcecf0b978f9e93d2e72/third_party/WebKit/LayoutTests/accessibility/element-role-mapping-normal-expected.txt
[modify] https://crrev.com/81dd4d6be788b5cb8871fcecf0b978f9e93d2e72/third_party/WebKit/Source/modules/accessibility/AXLayoutObject.cpp
[modify] https://crrev.com/81dd4d6be788b5cb8871fcecf0b978f9e93d2e72/tools/accessibility/rebase_dump_accessibility_tree_test.py

Components: UI>Accessibility
Labels: NewComponent-Accessibility-ChromeVox NewComponent-Accessibility
Components: UI>Accessibility>ChromeVox
Labels: -newcomponent-accessibility -newcomponent-accessibility-chromevox
Components: -UI>Accessibility
Components: -UI>Accessibility>ChromeVox Blink>Accessibility
Labels: -Pri-2 Pri-3
Labels: -Pri-3 Pri-1
Raising the priority of this because it's the root cause of at least four bugs we've had to fix:

 crbug.com/37721  - Same-page links didn't work if the link target was ignored

 crbug.com/689201  - Nodes with click listeners were ignored, leading to incorrect determination of whether nodes have a clickable ancestor or not

 crbug.com/797695  - Page content disappeared from accessibility tree, the root cause was that a node gained a click listener and became unignored without firing any notifications

crbug.com/801995 - A positioned element in the DOM was ignored, leading to all of its subtree getting the wrong bounding boxes

In addition, computing whether a node is ignored or not is expensive.

Comment 11 by katie@chromium.org, Feb 26 2018

Cc: katie@chromium.org
Project Member

Comment 12 by bugdroid1@chromium.org, Feb 27 2018

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

commit efaea08574338007491bc243eba4ccb266941987
Author: Dominic Mazzoni <dmazzoni@chromium.org>
Date: Tue Feb 27 18:48:26 2018

Introduce Ignored state in ui/accessibility

There are times when a node needs to be ignored, meaning it
shouldn't be exposed as part of the accessibility tree, but
its subtree should. A common example is role=none/presentation,
but we also sometimes do this for extra wrapper divs and spans.

Previously these ignored nodes were just never exposed by Blink,
but that has led to problems when a node's ignored status changes.

Instead, let's introduce the concept of ignored to AXNodeData
and add support for walking the "unignored" tree to AXNode.
When a node's ignored state changes, we should fire a Children
Changed event on the first unignored parent.

This change introduces a new state and some helper functions
but doesn't actually use them. A follow-up change will start
making use of this code.

Bug: 651614

Cq-Include-Trybots: master.tryserver.chromium.linux:closure_compilation
Change-Id: Ide93a65d5721c00e8c9d1780c8b524341b837f05
Tbr: tsepez@chromium.org
Reviewed-on: https://chromium-review.googlesource.com/936430
Commit-Queue: Dominic Mazzoni <dmazzoni@chromium.org>
Reviewed-by: Michael Giuffrida <michaelpg@chromium.org>
Reviewed-by: Nektarios Paisios <nektar@chromium.org>
Cr-Commit-Position: refs/heads/master@{#539508}
[modify] https://crrev.com/efaea08574338007491bc243eba4ccb266941987/chrome/common/extensions/api/automation.idl
[modify] https://crrev.com/efaea08574338007491bc243eba4ccb266941987/third_party/closure_compiler/externs/automation.js
[modify] https://crrev.com/efaea08574338007491bc243eba4ccb266941987/ui/accessibility/ax_enum_util.cc
[modify] https://crrev.com/efaea08574338007491bc243eba4ccb266941987/ui/accessibility/ax_enums.mojom
[modify] https://crrev.com/efaea08574338007491bc243eba4ccb266941987/ui/accessibility/ax_event_generator.cc
[modify] https://crrev.com/efaea08574338007491bc243eba4ccb266941987/ui/accessibility/ax_event_generator_unittest.cc
[modify] https://crrev.com/efaea08574338007491bc243eba4ccb266941987/ui/accessibility/ax_node.cc
[modify] https://crrev.com/efaea08574338007491bc243eba4ccb266941987/ui/accessibility/ax_node.h
[modify] https://crrev.com/efaea08574338007491bc243eba4ccb266941987/ui/accessibility/ax_tree_unittest.cc

Project Member

Comment 13 by bugdroid1@chromium.org, Apr 10 2018

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

commit 49db244dbd52dec910685fafaae86fab04e7e02f
Author: Dominic Mazzoni <dmazzoni@chromium.org>
Date: Tue Apr 10 19:11:19 2018

Fix bug in updating aria-owns parents.

Suppose the source node has an aria-owns relationship with a target node,
for example:

  <div id="source" aria-owns="target">...</div>
  <div id="target">...</div>

Now if "target" was to change its ID, it needs to ensure that
ChildrenChanged is called on "source" because it no longer owns the target.

This code was supposed to be handled by the first "if" block in
UpdateRelatedTree, which calls GetAriaOwnedParent and calls ChildrenChanged
on the (old) parent, before determing the new potential parent(s) and calling
ChildrenChanged on those.

However, this code was depending on GetReverseRelated returning a valid
AXObject, and it was returning null in this case, because "target" no longer
has any reverse relationships.

What should happen is that checking IsAriaOwned/GetAriaOwnedParent should
happen first, and GetReverseRelated second. The fix is for GetReverseRelated
to not return the AXObject for the target, it doesn't need to.

Bug: 651614
Change-Id: Ib2c0fb1cbabce7fbd2647916e4be0605e44b70ee
Reviewed-on: https://chromium-review.googlesource.com/1000318
Commit-Queue: Dominic Mazzoni <dmazzoni@chromium.org>
Reviewed-by: Aaron Leventhal <aleventhal@chromium.org>
Cr-Commit-Position: refs/heads/master@{#549606}
[modify] https://crrev.com/49db244dbd52dec910685fafaae86fab04e7e02f/third_party/WebKit/LayoutTests/accessibility/aria-owns-dynamic-changes.html
[modify] https://crrev.com/49db244dbd52dec910685fafaae86fab04e7e02f/third_party/blink/renderer/modules/accessibility/ax_relation_cache.cc
[modify] https://crrev.com/49db244dbd52dec910685fafaae86fab04e7e02f/third_party/blink/renderer/modules/accessibility/ax_relation_cache.h

Comment 14 by katie@chromium.org, Apr 16 2018

Blocking: 816719
Project Member

Comment 15 by bugdroid1@chromium.org, Apr 18 2018

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

commit 3d9b5b94d0649d6a2b0fb3c9e716476bec291208
Author: Dominic Mazzoni <dmazzoni@chromium.org>
Date: Wed Apr 18 21:36:38 2018

Introduce AXTableInfo to compute info about tables from an AXTree.

This new class computes information about a table in an AXTree,
including its dimensions, headers, and a mapping from row/column
index to a cell's node ID. It's computed from an AXTree on-demand
and cached until the tree changes.

Subsequent changes will switch browser-side code to use this
interface instead of the equivalent information provided by Blink,
and then remove some of the table-handling code from Blink.

See bug 832289 for more details on the planned refactoring.

Bug: 832289, 651614, 789748, 753125,
Change-Id: I29b31833426b69cb73266829e8f577785aa6fce6
Reviewed-on: https://chromium-review.googlesource.com/1011229
Commit-Queue: Dominic Mazzoni <dmazzoni@chromium.org>
Reviewed-by: Aaron Leventhal <aleventhal@chromium.org>
Cr-Commit-Position: refs/heads/master@{#551832}
[modify] https://crrev.com/3d9b5b94d0649d6a2b0fb3c9e716476bec291208/ui/accessibility/BUILD.gn
[add] https://crrev.com/3d9b5b94d0649d6a2b0fb3c9e716476bec291208/ui/accessibility/ax_table_info.cc
[add] https://crrev.com/3d9b5b94d0649d6a2b0fb3c9e716476bec291208/ui/accessibility/ax_table_info.h
[add] https://crrev.com/3d9b5b94d0649d6a2b0fb3c9e716476bec291208/ui/accessibility/ax_table_info_unittest.cc
[modify] https://crrev.com/3d9b5b94d0649d6a2b0fb3c9e716476bec291208/ui/accessibility/ax_tree.cc
[modify] https://crrev.com/3d9b5b94d0649d6a2b0fb3c9e716476bec291208/ui/accessibility/ax_tree.h

Project Member

Comment 16 by bugdroid1@chromium.org, Apr 24 2018

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

commit 65582a0a4cdbd7200afa163cdfb542236e5c3a55
Author: Dominic Mazzoni <dmazzoni@chromium.org>
Date: Tue Apr 24 23:21:35 2018

Use AXTableInfo to dynamically compute table properties.

This is a follow-up to http://crrev.com/c/1011229, which introduced
AXTableInfo. In this change, Mac and Windows accessibility code uses
AXTableInfo to get cell IDs, column headers, and row headers, rather
than relying on those attributes from Blink.

This speeds up Blink serialization and will make it easier for our
table handling code to be even more fast and robust.

TBR=estark@chromium.org

Bug: 832289, 651614, 789748, 753125
Change-Id: I4d859e0a5973f172b1b3e587ad871607d127f6cd
Reviewed-on: https://chromium-review.googlesource.com/1012447
Commit-Queue: Dominic Mazzoni <dmazzoni@chromium.org>
Reviewed-by: Aaron Leventhal <aleventhal@chromium.org>
Cr-Commit-Position: refs/heads/master@{#553354}
[modify] https://crrev.com/65582a0a4cdbd7200afa163cdfb542236e5c3a55/content/browser/accessibility/browser_accessibility.cc
[modify] https://crrev.com/65582a0a4cdbd7200afa163cdfb542236e5c3a55/content/browser/accessibility/browser_accessibility.h
[modify] https://crrev.com/65582a0a4cdbd7200afa163cdfb542236e5c3a55/content/browser/accessibility/browser_accessibility_cocoa.mm
[modify] https://crrev.com/65582a0a4cdbd7200afa163cdfb542236e5c3a55/content/browser/accessibility/browser_accessibility_manager.h
[modify] https://crrev.com/65582a0a4cdbd7200afa163cdfb542236e5c3a55/content/browser/accessibility/cross_platform_accessibility_browsertest.cc
[modify] https://crrev.com/65582a0a4cdbd7200afa163cdfb542236e5c3a55/content/renderer/accessibility/blink_ax_tree_source.cc
[modify] https://crrev.com/65582a0a4cdbd7200afa163cdfb542236e5c3a55/content/test/data/accessibility/aria/table-column-hidden-expected-blink.txt
[modify] https://crrev.com/65582a0a4cdbd7200afa163cdfb542236e5c3a55/ui/accessibility/ax_enum_util.cc
[modify] https://crrev.com/65582a0a4cdbd7200afa163cdfb542236e5c3a55/ui/accessibility/ax_enums.mojom
[modify] https://crrev.com/65582a0a4cdbd7200afa163cdfb542236e5c3a55/ui/accessibility/ax_node_data.cc
[modify] https://crrev.com/65582a0a4cdbd7200afa163cdfb542236e5c3a55/ui/accessibility/ax_tree_combiner_unittest.cc
[modify] https://crrev.com/65582a0a4cdbd7200afa163cdfb542236e5c3a55/ui/accessibility/platform/ax_platform_node_base.cc
[modify] https://crrev.com/65582a0a4cdbd7200afa163cdfb542236e5c3a55/ui/accessibility/platform/ax_platform_node_delegate.h
[modify] https://crrev.com/65582a0a4cdbd7200afa163cdfb542236e5c3a55/ui/accessibility/platform/ax_platform_node_unittest.cc
[modify] https://crrev.com/65582a0a4cdbd7200afa163cdfb542236e5c3a55/ui/accessibility/platform/ax_platform_node_win.cc
[modify] https://crrev.com/65582a0a4cdbd7200afa163cdfb542236e5c3a55/ui/accessibility/platform/ax_platform_node_win_unittest.cc
[modify] https://crrev.com/65582a0a4cdbd7200afa163cdfb542236e5c3a55/ui/accessibility/platform/ax_system_caret_win.cc
[modify] https://crrev.com/65582a0a4cdbd7200afa163cdfb542236e5c3a55/ui/accessibility/platform/ax_system_caret_win.h
[modify] https://crrev.com/65582a0a4cdbd7200afa163cdfb542236e5c3a55/ui/accessibility/platform/test_ax_node_wrapper.cc
[modify] https://crrev.com/65582a0a4cdbd7200afa163cdfb542236e5c3a55/ui/accessibility/platform/test_ax_node_wrapper.h
[modify] https://crrev.com/65582a0a4cdbd7200afa163cdfb542236e5c3a55/ui/views/accessibility/native_view_accessibility_auralinux.cc
[modify] https://crrev.com/65582a0a4cdbd7200afa163cdfb542236e5c3a55/ui/views/accessibility/native_view_accessibility_base.cc
[modify] https://crrev.com/65582a0a4cdbd7200afa163cdfb542236e5c3a55/ui/views/accessibility/native_view_accessibility_base.h

Project Member

Comment 18 by bugdroid1@chromium.org, May 23 2018

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

commit 08877dedc09bb91574d2fec18423767e210a249d
Author: Dominic Mazzoni <dmazzoni@chromium.org>
Date: Wed May 23 20:46:36 2018

Revert "Avoid serializing the same accessibility node twice in the same message."

This reverts commit 8322b0b5429b545a4533be255e51725d06e719a2.

Reason for revert: Renderer crash, http://crbug.com/845778

Original change's description:
> Avoid serializing the same accessibility node twice in the same message.
> 
> Bug: 651614
> TBR=alexst@chromium.org
> 
> Change-Id: I77ef290a193bd3dbb3dafdf0de5670a7deec6c86
> Reviewed-on: https://chromium-review.googlesource.com/1063007
> Commit-Queue: Dominic Mazzoni <dmazzoni@chromium.org>
> Reviewed-by: David Tseng <dtseng@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#560165}

TBR=dmazzoni@chromium.org,alexst@chromium.org,dtseng@chromium.org

# Not skipping CQ checks because original CL landed > 1 day ago.

Bug: 651614, 845778
Change-Id: Ic025a09d11845892a0e11a350fe8c5963f053081
Reviewed-on: https://chromium-review.googlesource.com/1069891
Reviewed-by: Dominic Mazzoni <dmazzoni@chromium.org>
Commit-Queue: Dominic Mazzoni <dmazzoni@chromium.org>
Cr-Commit-Position: refs/heads/master@{#561246}
[modify] https://crrev.com/08877dedc09bb91574d2fec18423767e210a249d/chrome/browser/ui/aura/accessibility/automation_manager_aura.cc
[modify] https://crrev.com/08877dedc09bb91574d2fec18423767e210a249d/chromecast/browser/ui/aura/accessibility/automation_manager_aura.cc
[modify] https://crrev.com/08877dedc09bb91574d2fec18423767e210a249d/content/renderer/accessibility/render_accessibility_impl.cc
[modify] https://crrev.com/08877dedc09bb91574d2fec18423767e210a249d/ui/accessibility/ax_tree_serializer.h
[modify] https://crrev.com/08877dedc09bb91574d2fec18423767e210a249d/ui/accessibility/ax_tree_serializer_unittest.cc

Project Member

Comment 19 by bugdroid1@chromium.org, May 23 2018

Labels: merge-merged-3437
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/7d30fb683495ea3fd31cf86878b066fde42efa27

commit 7d30fb683495ea3fd31cf86878b066fde42efa27
Author: Dominic Mazzoni <dmazzoni@chromium.org>
Date: Wed May 23 21:45:40 2018

Merge to branch 3437: Revert "Avoid serializing the same accessibility node twice in the same message."

This reverts commit 8322b0b5429b545a4533be255e51725d06e719a2.

Reason for revert: Renderer crash, http://crbug.com/845778

Original change's description:
> Avoid serializing the same accessibility node twice in the same message.
> 
> Bug: 651614
> TBR=alexst@chromium.org
> 
> Change-Id: I77ef290a193bd3dbb3dafdf0de5670a7deec6c86
> Reviewed-on: https://chromium-review.googlesource.com/1063007
> Commit-Queue: Dominic Mazzoni <dmazzoni@chromium.org>
> Reviewed-by: David Tseng <dtseng@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#560165}

TBR=dmazzoni@chromium.org,alexst@chromium.org,dtseng@chromium.org

# Not skipping CQ checks because original CL landed > 1 day ago.

Bug: 651614, 845778
Change-Id: Ic025a09d11845892a0e11a350fe8c5963f053081
Reviewed-on: https://chromium-review.googlesource.com/1069891
Reviewed-by: Dominic Mazzoni <dmazzoni@chromium.org>
Commit-Queue: Dominic Mazzoni <dmazzoni@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#561246}(cherry picked from commit 08877dedc09bb91574d2fec18423767e210a249d)
Reviewed-on: https://chromium-review.googlesource.com/1070727
Cr-Commit-Position: refs/branch-heads/3437@{#7}
Cr-Branched-From: 9eef34b60d79175bab801351cfd4aa4d76584f3b-refs/heads/master@{#560453}
[modify] https://crrev.com/7d30fb683495ea3fd31cf86878b066fde42efa27/chrome/browser/ui/aura/accessibility/automation_manager_aura.cc
[modify] https://crrev.com/7d30fb683495ea3fd31cf86878b066fde42efa27/chromecast/browser/ui/aura/accessibility/automation_manager_aura.cc
[modify] https://crrev.com/7d30fb683495ea3fd31cf86878b066fde42efa27/content/renderer/accessibility/render_accessibility_impl.cc
[modify] https://crrev.com/7d30fb683495ea3fd31cf86878b066fde42efa27/ui/accessibility/ax_tree_serializer.h
[modify] https://crrev.com/7d30fb683495ea3fd31cf86878b066fde42efa27/ui/accessibility/ax_tree_serializer_unittest.cc

Project Member

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

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

commit 50da791e6d9ceec220bcf98c3abc16fa424fb009
Author: Dominic Mazzoni <dmazzoni@chromium.org>
Date: Fri May 25 22:42:23 2018

Revert "Re-land: Avoid serializing the same accessibility node twice in the same message"

Speculative revert, see build failures on Win10 Tests x64 (dbg):
https://ci.chromium.org/p/chromium/builders/luci.chromium.ci/Win10%20Tests%20x64%20%28dbg%29/803

Bug: http://crbug.com/846837

This reverts commit 983e926ba600204c1a0a4d1ad3428136c1ff8058.

Reason for revert: <INSERT REASONING HERE>

Original change's description:
> Re-land: Avoid serializing the same accessibility node twice in the same message
> 
> Originally landed: r560165, crrev.com/c/1063007
> Reverted: r561246, crrev.com/c/1069891
> 
> TBR=dtseng@chromium.org
> Bug: 651614, 845778
> 
> Change-Id: I77b54de28cb0c4a231b5b0758ba4708100d27fff
> Reviewed-on: https://chromium-review.googlesource.com/1072875
> Reviewed-by: Dominic Mazzoni <dmazzoni@chromium.org>
> Commit-Queue: Dominic Mazzoni <dmazzoni@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#561913}

TBR=dmazzoni@chromium.org,dtseng@chromium.org

Change-Id: I5cbf8006e4917a9c008143ae4b746543d2b038c2
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: 651614, 845778, 846837
Reviewed-on: https://chromium-review.googlesource.com/1074050
Reviewed-by: Dominic Mazzoni <dmazzoni@chromium.org>
Commit-Queue: Dominic Mazzoni <dmazzoni@chromium.org>
Cr-Commit-Position: refs/heads/master@{#562043}
[modify] https://crrev.com/50da791e6d9ceec220bcf98c3abc16fa424fb009/chrome/browser/ui/aura/accessibility/automation_manager_aura.cc
[modify] https://crrev.com/50da791e6d9ceec220bcf98c3abc16fa424fb009/chromecast/browser/ui/aura/accessibility/automation_manager_aura.cc
[modify] https://crrev.com/50da791e6d9ceec220bcf98c3abc16fa424fb009/content/renderer/accessibility/render_accessibility_impl.cc
[modify] https://crrev.com/50da791e6d9ceec220bcf98c3abc16fa424fb009/ui/accessibility/ax_tree_serializer.h
[modify] https://crrev.com/50da791e6d9ceec220bcf98c3abc16fa424fb009/ui/accessibility/ax_tree_serializer_unittest.cc

Project Member

Comment 22 by bugdroid1@chromium.org, May 26 2018

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

commit 714e3f7dbda4483ac2f6b1646b6a26914990388c
Author: Dominic Mazzoni <dmazzoni@chromium.org>
Date: Sat May 26 06:43:32 2018

Reland "Re-land: Avoid serializing the same accessibility node twice in the same message"

Reverted second time speculatively to see if it was related to
failures on Win10 Tests x64 (dbg), but it didn't seem related.

This reverts commit 50da791e6d9ceec220bcf98c3abc16fa424fb009.

Original change's description:
> Revert "Re-land: Avoid serializing the same accessibility node twice in the same message"
> 
> Speculative revert, see build failures on Win10 Tests x64 (dbg):
> https://ci.chromium.org/p/chromium/builders/luci.chromium.ci/Win10%20Tests%20x64%20%28dbg%29/803
> 
> Bug: http://crbug.com/846837
> 
> This reverts commit 983e926ba600204c1a0a4d1ad3428136c1ff8058.
> 
> Reason for revert: <INSERT REASONING HERE>
> 
> Original change's description:
> > Re-land: Avoid serializing the same accessibility node twice in the same message
> > 
> > Originally landed: r560165, crrev.com/c/1063007
> > Reverted: r561246, crrev.com/c/1069891
> > 
> > TBR=dtseng@chromium.org
> > Bug: 651614, 845778
> > 
> > Change-Id: I77b54de28cb0c4a231b5b0758ba4708100d27fff
> > Reviewed-on: https://chromium-review.googlesource.com/1072875
> > Reviewed-by: Dominic Mazzoni <dmazzoni@chromium.org>
> > Commit-Queue: Dominic Mazzoni <dmazzoni@chromium.org>
> > Cr-Commit-Position: refs/heads/master@{#561913}
> 
> TBR=dmazzoni@chromium.org,dtseng@chromium.org
> 
> Change-Id: I5cbf8006e4917a9c008143ae4b746543d2b038c2
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: 651614, 845778, 846837
> Reviewed-on: https://chromium-review.googlesource.com/1074050
> Reviewed-by: Dominic Mazzoni <dmazzoni@chromium.org>
> Commit-Queue: Dominic Mazzoni <dmazzoni@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#562043}

TBR=dmazzoni@chromium.org,dtseng@chromium.org

Change-Id: I3dc8009836eb084271a3ac5239311008dc17105b
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: http://crbug.com/846837, 651614, 845778, 846837
Reviewed-on: https://chromium-review.googlesource.com/1074587
Reviewed-by: Dominic Mazzoni <dmazzoni@chromium.org>
Commit-Queue: Dominic Mazzoni <dmazzoni@chromium.org>
Cr-Commit-Position: refs/heads/master@{#562118}
[modify] https://crrev.com/714e3f7dbda4483ac2f6b1646b6a26914990388c/chrome/browser/ui/aura/accessibility/automation_manager_aura.cc
[modify] https://crrev.com/714e3f7dbda4483ac2f6b1646b6a26914990388c/chromecast/browser/ui/aura/accessibility/automation_manager_aura.cc
[modify] https://crrev.com/714e3f7dbda4483ac2f6b1646b6a26914990388c/content/renderer/accessibility/render_accessibility_impl.cc
[modify] https://crrev.com/714e3f7dbda4483ac2f6b1646b6a26914990388c/ui/accessibility/ax_tree_serializer.h
[modify] https://crrev.com/714e3f7dbda4483ac2f6b1646b6a26914990388c/ui/accessibility/ax_tree_serializer_unittest.cc

Blockedon: 848043
Project Member

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

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

commit 79cdf59c0f60563be32c0429ef8264b3ad16bfca
Author: Dominic Mazzoni <dmazzoni@chromium.org>
Date: Wed May 30 23:36:17 2018

Revert "Re-land: Avoid serializing the same accessibility node twice in the same message"

This reverts commit 714e3f7dbda4483ac2f6b1646b6a26914990388c.

Reason for revert: reproducible crash: http://crbug.com/847276

Original change's description:
> Reland "Re-land: Avoid serializing the same accessibility node twice in the same message"
>
> Reverted second time speculatively to see if it was related to
> failures on Win10 Tests x64 (dbg), but it didn't seem related.
>
> This reverts commit 50da791e6d9ceec220bcf98c3abc16fa424fb009.
>
> Original change's description:
> > Revert "Re-land: Avoid serializing the same accessibility node twice in the same message"
> >
> > Speculative revert, see build failures on Win10 Tests x64 (dbg):
> > https://ci.chromium.org/p/chromium/builders/luci.chromium.ci/Win10%20Tests%20x64%20%28dbg%29/803
> >
> > Bug: http://crbug.com/846837
> >
> > This reverts commit 983e926ba600204c1a0a4d1ad3428136c1ff8058.
> >
> > Reason for revert: <INSERT REASONING HERE>
> >
> > Original change's description:
> > > Re-land: Avoid serializing the same accessibility node twice in the same message
> > >
> > > Originally landed: r560165, crrev.com/c/1063007
> > > Reverted: r561246, crrev.com/c/1069891
> > >
> > > TBR=dtseng@chromium.org
> > > Bug: 651614, 845778
> > >
> > > Change-Id: I77b54de28cb0c4a231b5b0758ba4708100d27fff
> > > Reviewed-on: https://chromium-review.googlesource.com/1072875
> > > Reviewed-by: Dominic Mazzoni <dmazzoni@chromium.org>
> > > Commit-Queue: Dominic Mazzoni <dmazzoni@chromium.org>
> > > Cr-Commit-Position: refs/heads/master@{#561913}
> >
> > TBR=dmazzoni@chromium.org,dtseng@chromium.org
> >
> > Change-Id: I5cbf8006e4917a9c008143ae4b746543d2b038c2
> > No-Presubmit: true
> > No-Tree-Checks: true
> > No-Try: true
> > Bug: 651614, 845778, 846837
> > Reviewed-on: https://chromium-review.googlesource.com/1074050
> > Reviewed-by: Dominic Mazzoni <dmazzoni@chromium.org>
> > Commit-Queue: Dominic Mazzoni <dmazzoni@chromium.org>
> > Cr-Commit-Position: refs/heads/master@{#562043}
>
> TBR=dmazzoni@chromium.org,dtseng@chromium.org
>
> Change-Id: I3dc8009836eb084271a3ac5239311008dc17105b
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: http://crbug.com/846837, 651614, 845778, 846837
> Reviewed-on: https://chromium-review.googlesource.com/1074587
> Reviewed-by: Dominic Mazzoni <dmazzoni@chromium.org>
> Commit-Queue: Dominic Mazzoni <dmazzoni@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#562118}

TBR=dmazzoni@chromium.org,dtseng@chromium.org

NOTRY=true

Bug: http://crbug.com/846837, 651614, 845778, 846837, 847276
Change-Id: I342db1180d09bc9eaa1a9c8fc7054fa2ca366eb6
Reviewed-on: https://chromium-review.googlesource.com/1079090
Commit-Queue: Dominic Mazzoni <dmazzoni@chromium.org>
Reviewed-by: Dominic Mazzoni <dmazzoni@chromium.org>
Cr-Commit-Position: refs/heads/master@{#563061}
[modify] https://crrev.com/79cdf59c0f60563be32c0429ef8264b3ad16bfca/chrome/browser/ui/aura/accessibility/automation_manager_aura.cc
[modify] https://crrev.com/79cdf59c0f60563be32c0429ef8264b3ad16bfca/chromecast/browser/ui/aura/accessibility/automation_manager_aura.cc
[modify] https://crrev.com/79cdf59c0f60563be32c0429ef8264b3ad16bfca/content/renderer/accessibility/render_accessibility_impl.cc
[modify] https://crrev.com/79cdf59c0f60563be32c0429ef8264b3ad16bfca/ui/accessibility/ax_tree_serializer.h
[modify] https://crrev.com/79cdf59c0f60563be32c0429ef8264b3ad16bfca/ui/accessibility/ax_tree_serializer_unittest.cc

Project Member

Comment 25 by bugdroid1@chromium.org, Jun 18 2018

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

commit 44a35d4f9ce32adaf1bff4ff513925980c648457
Author: Dominic Mazzoni <dmazzoni@chromium.org>
Date: Mon Jun 18 22:21:07 2018

Separate sending AX events from updating dirty nodes, remove duplicates.

Splits code that loops over accessibility events from the code that
loops over dirty nodes that need to be serialized. Keeps track of
duplicate ids and avoids serializing the same node twice.

This is a different approach than crrev.com/c/1063007
"Avoid serializing the same accessibility node twice in the
same message" which tried to put all of the nodes in
the same AXTreeUpdate. That approach could fail in rare cases when
multiple updates both tried to set node_id_to_clear.
Now we've refactored the event message so that it can
contain multiple AXTreeUpdates, so it's safe to just skip
an entire update if it's a node we've already serialized
in this event bundle.

Bug: 651614, 845778

Change-Id: I3cc859e7a63d9c8b8beeb930d96aa53898940485
Reviewed-on: https://chromium-review.googlesource.com/1097423
Commit-Queue: Dominic Mazzoni <dmazzoni@chromium.org>
Reviewed-by: David Tseng <dtseng@chromium.org>
Cr-Commit-Position: refs/heads/master@{#568195}
[modify] https://crrev.com/44a35d4f9ce32adaf1bff4ff513925980c648457/content/renderer/accessibility/render_accessibility_impl.cc
[modify] https://crrev.com/44a35d4f9ce32adaf1bff4ff513925980c648457/content/renderer/accessibility/render_accessibility_impl.h

Project Member

Comment 26 by bugdroid1@chromium.org, Jul 18

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

commit c101cb728aecdd2bb77d29ebe8deaee47261f65e
Author: Dominic Mazzoni <dmazzoni@chromium.org>
Date: Wed Jul 18 23:22:32 2018

Accessibility should always serialize an entire block when something changes.

Whenever we post a change to the accessibility tree affecting an element,
if that element isn't block-level we should walk up to the nearest block-level
element and serialize the whole thing.

The reason is that we have fields like nextOnLine and previousOnLine that
depend on the line layout, which can change when changes happen to inline
elements.

Eventually I'd like to have a better concept of marking part of the
accessibility tree "dirty" as a way of cleaning up this logic, but
in the meantime this is hopefully a good fix with a test that can
potentially help fix some real bugs now.

Bug:  843746 , 651614
Change-Id: I411a13c63b0c88ab225393b5287cb87a5887565b
Reviewed-on: https://chromium-review.googlesource.com/1062661
Reviewed-by: David Tseng <dtseng@chromium.org>
Commit-Queue: Dominic Mazzoni <dmazzoni@chromium.org>
Cr-Commit-Position: refs/heads/master@{#576249}
[add] https://crrev.com/c101cb728aecdd2bb77d29ebe8deaee47261f65e/content/browser/accessibility/line_layout_browsertest.cc
[modify] https://crrev.com/c101cb728aecdd2bb77d29ebe8deaee47261f65e/content/renderer/accessibility/render_accessibility_impl.cc
[modify] https://crrev.com/c101cb728aecdd2bb77d29ebe8deaee47261f65e/content/test/BUILD.gn
[modify] https://crrev.com/c101cb728aecdd2bb77d29ebe8deaee47261f65e/content/test/data/accessibility/event/aria-combo-box-next-expected-win.txt
[modify] https://crrev.com/c101cb728aecdd2bb77d29ebe8deaee47261f65e/content/test/data/accessibility/event/listbox-next-expected-win.txt
[modify] https://crrev.com/c101cb728aecdd2bb77d29ebe8deaee47261f65e/content/test/data/accessibility/event/menulist-collapse-expected-mac.txt
[modify] https://crrev.com/c101cb728aecdd2bb77d29ebe8deaee47261f65e/content/test/data/accessibility/event/menulist-collapse-expected-win.txt
[modify] https://crrev.com/c101cb728aecdd2bb77d29ebe8deaee47261f65e/content/test/data/accessibility/event/menulist-focus-expected-mac.txt
[modify] https://crrev.com/c101cb728aecdd2bb77d29ebe8deaee47261f65e/content/test/data/accessibility/event/menulist-focus-expected-win.txt
[add] https://crrev.com/c101cb728aecdd2bb77d29ebe8deaee47261f65e/content/test/data/accessibility/lines/lines.html

Sign in to add a comment