New issue
Advanced search Search tips

Issue 699438 link

Starred by 2 users

Issue metadata

Status: Started
Owner:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 2
Type: Bug
Team-Accessibility

Blocked on:
issue 733334
issue 848043

Blocking:
issue 728151
issue 787057



Sign in to add a comment

Blink should fire fewer accessibility events, use attribute change callbacks instead

Project Member Reported by dmazz...@chromium.org, Mar 8 2017

Issue description

Right now we depend too much on Blink firing all of the right possible events, which is a superset of all of the events needed on any platform, and still sometimes wrong.

Instead we should fire events based on node attributes changing directly.

 
Project Member

Comment 1 by bugdroid1@chromium.org, Mar 13 2017

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

commit 3ab5385cf6be9069d26b135647dc2df6e1f33e3f
Author: dmazzoni <dmazzoni@chromium.org>
Date: Mon Mar 13 18:07:03 2017

Add support for attribute change callbacks in AXNodeData.

The idea here is that instead of Blink firing events like "name changed",
"value changed", or "checked state changed", Blink should be able to just
fire a generic notification that a node changed, and then each platform
should be able to trigger platform-specific events as needed, based on
actual changes to the attributes of an accessibilitiy node.

This change just adds support for attribute change callbacks, so it's
easy to write code that gets called whenever any particular attribute
changes.

Quite tedious, but I wanted to make sure this was both comprehensive and
exhaustively tested so we can feel confident using it.

BUG=699438

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

[modify] https://crrev.com/3ab5385cf6be9069d26b135647dc2df6e1f33e3f/ui/accessibility/ax_tree.cc
[modify] https://crrev.com/3ab5385cf6be9069d26b135647dc2df6e1f33e3f/ui/accessibility/ax_tree.h
[modify] https://crrev.com/3ab5385cf6be9069d26b135647dc2df6e1f33e3f/ui/accessibility/ax_tree_unittest.cc

Labels: NewComponent-Accessibility
Project Member

Comment 3 by bugdroid1@chromium.org, Apr 11 2017

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

commit dd5b263792257e226f31136b15af0341673811d5
Author: dmazzoni <dmazzoni@chromium.org>
Date: Tue Apr 11 16:15:37 2017

Fire event on Mac when PRESSED state changes

On Mac, toggle buttons are subclasses of checkboxes, so we can
handle them the same as when a checkbox changes.

This is a great use of the new attribute chance callback infrastructure.

BUG= 709572 ,699438

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

[modify] https://crrev.com/dd5b263792257e226f31136b15af0341673811d5/content/browser/accessibility/browser_accessibility_manager_mac.h
[modify] https://crrev.com/dd5b263792257e226f31136b15af0341673811d5/content/browser/accessibility/browser_accessibility_manager_mac.mm

Components: Internals>Accessibility
Components: -UI>Accessibility
Labels: -newcomponent-accessibility-internals -newcomponent-accessibility
Project Member

Comment 6 by bugdroid1@chromium.org, May 26 2017

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

commit 2751e50876e2591e8268c124001b58dabfab6828
Author: dmazzoni <dmazzoni@chromium.org>
Date: Fri May 26 09:03:10 2017

Fix DumpAccessibilityEvents tests on Mac and improve test coverage

Fix some minor issues that caused DumpAccessibilityEvents tests to fail
or behave flakily. Re-enable several tests and add many more with a
goal of covering all possible Mac notifications with tests.

This is part of a larger effort to fire fewer events from Blink
and fire them in platform-specific code instead. Increasing
test coverage will help with this.

BUG= 719030 ,699438

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

[modify] https://crrev.com/2751e50876e2591e8268c124001b58dabfab6828/content/browser/accessibility/accessibility_event_recorder_mac.mm
[modify] https://crrev.com/2751e50876e2591e8268c124001b58dabfab6828/content/browser/accessibility/browser_accessibility_manager.cc
[modify] https://crrev.com/2751e50876e2591e8268c124001b58dabfab6828/content/browser/accessibility/browser_accessibility_manager.h
[modify] https://crrev.com/2751e50876e2591e8268c124001b58dabfab6828/content/browser/accessibility/browser_accessibility_manager_mac.mm
[modify] https://crrev.com/2751e50876e2591e8268c124001b58dabfab6828/content/browser/accessibility/dump_accessibility_browsertest_base.cc
[modify] https://crrev.com/2751e50876e2591e8268c124001b58dabfab6828/content/browser/accessibility/dump_accessibility_events_browsertest.cc
[modify] https://crrev.com/2751e50876e2591e8268c124001b58dabfab6828/content/test/data/accessibility/event/aria-combo-box-collapse.html
[modify] https://crrev.com/2751e50876e2591e8268c124001b58dabfab6828/content/test/data/accessibility/event/aria-combo-box-expand.html
[modify] https://crrev.com/2751e50876e2591e8268c124001b58dabfab6828/content/test/data/accessibility/event/aria-combo-box-focus-expected-win.txt
[modify] https://crrev.com/2751e50876e2591e8268c124001b58dabfab6828/content/test/data/accessibility/event/aria-combo-box-focus.html
[modify] https://crrev.com/2751e50876e2591e8268c124001b58dabfab6828/content/test/data/accessibility/event/aria-combo-box-next.html
[add] https://crrev.com/2751e50876e2591e8268c124001b58dabfab6828/content/test/data/accessibility/event/aria-tree-collapse-expected-mac.txt
[add] https://crrev.com/2751e50876e2591e8268c124001b58dabfab6828/content/test/data/accessibility/event/aria-tree-collapse.html
[add] https://crrev.com/2751e50876e2591e8268c124001b58dabfab6828/content/test/data/accessibility/event/aria-tree-expand-expected-mac.txt
[add] https://crrev.com/2751e50876e2591e8268c124001b58dabfab6828/content/test/data/accessibility/event/aria-tree-expand.html
[add] https://crrev.com/2751e50876e2591e8268c124001b58dabfab6828/content/test/data/accessibility/event/aria-treeitem-focus-expected-mac.txt
[add] https://crrev.com/2751e50876e2591e8268c124001b58dabfab6828/content/test/data/accessibility/event/aria-treeitem-focus.html
[modify] https://crrev.com/2751e50876e2591e8268c124001b58dabfab6828/content/test/data/accessibility/event/expanded-change.html
[modify] https://crrev.com/2751e50876e2591e8268c124001b58dabfab6828/content/test/data/accessibility/event/input-type-text-value-changed.html
[add] https://crrev.com/2751e50876e2591e8268c124001b58dabfab6828/content/test/data/accessibility/event/invalid-status-change-expected-mac.txt
[add] https://crrev.com/2751e50876e2591e8268c124001b58dabfab6828/content/test/data/accessibility/event/invalid-status-change.html
[modify] https://crrev.com/2751e50876e2591e8268c124001b58dabfab6828/content/test/data/accessibility/event/listbox-focus.html
[modify] https://crrev.com/2751e50876e2591e8268c124001b58dabfab6828/content/test/data/accessibility/event/listbox-next.html
[add] https://crrev.com/2751e50876e2591e8268c124001b58dabfab6828/content/test/data/accessibility/event/live-region-add-expected-mac.txt
[add] https://crrev.com/2751e50876e2591e8268c124001b58dabfab6828/content/test/data/accessibility/event/live-region-add.html
[add] https://crrev.com/2751e50876e2591e8268c124001b58dabfab6828/content/test/data/accessibility/event/live-region-change-expected-mac.txt
[add] https://crrev.com/2751e50876e2591e8268c124001b58dabfab6828/content/test/data/accessibility/event/live-region-change.html
[add] https://crrev.com/2751e50876e2591e8268c124001b58dabfab6828/content/test/data/accessibility/event/live-region-create-expected-mac.txt
[add] https://crrev.com/2751e50876e2591e8268c124001b58dabfab6828/content/test/data/accessibility/event/live-region-create.html
[add] https://crrev.com/2751e50876e2591e8268c124001b58dabfab6828/content/test/data/accessibility/event/live-region-remove-expected-mac.txt
[add] https://crrev.com/2751e50876e2591e8268c124001b58dabfab6828/content/test/data/accessibility/event/live-region-remove.html
[modify] https://crrev.com/2751e50876e2591e8268c124001b58dabfab6828/content/test/data/accessibility/event/menulist-collapse.html
[modify] https://crrev.com/2751e50876e2591e8268c124001b58dabfab6828/content/test/data/accessibility/event/menulist-expand.html
[modify] https://crrev.com/2751e50876e2591e8268c124001b58dabfab6828/content/test/data/accessibility/event/menulist-focus.html
[modify] https://crrev.com/2751e50876e2591e8268c124001b58dabfab6828/content/test/data/accessibility/event/menulist-next.html
[modify] https://crrev.com/2751e50876e2591e8268c124001b58dabfab6828/content/test/data/accessibility/event/menulist-popup.html

Labels: -Pri-3 Pri-2
Note that if Blink fires fewer events, we can avoid a lot of complexity where we have to walk the tree in the middle of layout or when updateDistribution needs to be called.

Ideally insetad of accessibility notifications, we just mark nodes as dirty, then update the accessibility tree as part of a lifecycle update, then events are synthesized as needed when the accessibility tree is unserialized in the browser process.

Comment 8 by kojii@chromium.org, Jun 1 2017

Blocking: 728151
Project Member

Comment 9 by bugdroid1@chromium.org, Jun 8 2017

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

commit 5e3acae98e5b9417f6757866a264284c9e38c809
Author: dmazzoni <dmazzoni@chromium.org>
Date: Thu Jun 08 04:39:52 2017

Automatically fire AX events on Mac based on tree changes

This change uses tree changes to automatically determine
which Mac AX events to fire, rather than getting the events
directly from Blink. The code to fire events from Blink is
removed for OS_MACOSX in this change.

Subsequent changes will do the same for Windows, Linux,
Android, and Chrome OS, and then we can delete all of the
code that fires specific events from Blink, and just mark
AX nodes as dirty instead.

BUG=699438

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

[modify] https://crrev.com/5e3acae98e5b9417f6757866a264284c9e38c809/chrome/renderer/extensions/automation_internal_custom_bindings.cc
[modify] https://crrev.com/5e3acae98e5b9417f6757866a264284c9e38c809/chrome/renderer/extensions/automation_internal_custom_bindings.h
[modify] https://crrev.com/5e3acae98e5b9417f6757866a264284c9e38c809/content/browser/accessibility/browser_accessibility_manager.cc
[modify] https://crrev.com/5e3acae98e5b9417f6757866a264284c9e38c809/content/browser/accessibility/browser_accessibility_manager.h
[modify] https://crrev.com/5e3acae98e5b9417f6757866a264284c9e38c809/content/browser/accessibility/browser_accessibility_manager_mac.h
[modify] https://crrev.com/5e3acae98e5b9417f6757866a264284c9e38c809/content/browser/accessibility/browser_accessibility_manager_mac.mm
[modify] https://crrev.com/5e3acae98e5b9417f6757866a264284c9e38c809/content/browser/accessibility/dump_accessibility_events_browsertest.cc
[add] https://crrev.com/5e3acae98e5b9417f6757866a264284c9e38c809/content/test/data/accessibility/event/add-alert-expected-mac.txt
[modify] https://crrev.com/5e3acae98e5b9417f6757866a264284c9e38c809/content/test/data/accessibility/event/aria-combo-box-expand-expected-mac.txt
[modify] https://crrev.com/5e3acae98e5b9417f6757866a264284c9e38c809/content/test/data/accessibility/event/aria-combo-box-focus-expected-mac.txt
[modify] https://crrev.com/5e3acae98e5b9417f6757866a264284c9e38c809/content/test/data/accessibility/event/aria-treeitem-focus-expected-mac.txt
[modify] https://crrev.com/5e3acae98e5b9417f6757866a264284c9e38c809/content/test/data/accessibility/event/listbox-next-expected-mac.txt
[add] https://crrev.com/5e3acae98e5b9417f6757866a264284c9e38c809/content/test/data/accessibility/event/live-region-add-live-attribute-expected-mac.txt
[add] https://crrev.com/5e3acae98e5b9417f6757866a264284c9e38c809/content/test/data/accessibility/event/live-region-add-live-attribute.html
[modify] https://crrev.com/5e3acae98e5b9417f6757866a264284c9e38c809/content/test/data/accessibility/event/menulist-collapse-expected-mac.txt
[modify] https://crrev.com/5e3acae98e5b9417f6757866a264284c9e38c809/ui/accessibility/ax_tree.cc
[modify] https://crrev.com/5e3acae98e5b9417f6757866a264284c9e38c809/ui/accessibility/ax_tree.h
[modify] https://crrev.com/5e3acae98e5b9417f6757866a264284c9e38c809/ui/accessibility/ax_tree_fuzzer.cc
[modify] https://crrev.com/5e3acae98e5b9417f6757866a264284c9e38c809/ui/accessibility/ax_tree_unittest.cc
[modify] https://crrev.com/5e3acae98e5b9417f6757866a264284c9e38c809/ui/accessibility/platform/test_ax_node_wrapper.cc

Blockedon: 733334
Project Member

Comment 11 by bugdroid1@chromium.org, Jun 28 2017

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

commit 1a48b88399b0324a2cc828db06f375c9ed3a777c
Author: dmazzoni <dmazzoni@chromium.org>
Date: Wed Jun 28 00:32:55 2017

Fire load complete notifications on Mac even when page loads quickly.

This broke with change r477889 (https://codereview.chromium.org/2917363002)
because it fired load complete notifications when the "loaded" flag
changes from false to true, but it failed to handle cases where we
swap in a new tree root that's already loaded, which happens with
local pages and data urls.

BUG= 733334 ,699438

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

[modify] https://crrev.com/1a48b88399b0324a2cc828db06f375c9ed3a777c/content/browser/accessibility/browser_accessibility_manager_mac.mm

Project Member

Comment 12 by bugdroid1@chromium.org, Jul 28 2017

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

commit 3674d6f0ac52b4c7e3c21aa76f1cf842692ec692
Author: dmazzoni <dmazzoni@chromium.org>
Date: Fri Jul 28 18:27:19 2017

Automatically fire AX events on Win based on tree changes

This change uses tree changes to automatically determine
which Win AX events to fire, rather than getting the events
directly from Blink. The code to fire events from Blink is
removed for OS_WIN in this change.

A previous change did this for Mac. Subsequent changes will
do the same for Linux, Android, and Chrome OS, and then we can
delete all of the code that fires specific events from Blink,
and just mark AX nodes as dirty instead.

BUG=699438

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

[modify] https://crrev.com/3674d6f0ac52b4c7e3c21aa76f1cf842692ec692/content/browser/accessibility/browser_accessibility_event_win.cc
[modify] https://crrev.com/3674d6f0ac52b4c7e3c21aa76f1cf842692ec692/content/browser/accessibility/browser_accessibility_manager.cc
[modify] https://crrev.com/3674d6f0ac52b4c7e3c21aa76f1cf842692ec692/content/browser/accessibility/browser_accessibility_manager_win.cc
[modify] https://crrev.com/3674d6f0ac52b4c7e3c21aa76f1cf842692ec692/content/browser/accessibility/browser_accessibility_manager_win.h
[modify] https://crrev.com/3674d6f0ac52b4c7e3c21aa76f1cf842692ec692/content/renderer/accessibility/blink_ax_tree_source.cc
[modify] https://crrev.com/3674d6f0ac52b4c7e3c21aa76f1cf842692ec692/content/test/data/accessibility/event/aria-combo-box-collapse-expected-win.txt
[modify] https://crrev.com/3674d6f0ac52b4c7e3c21aa76f1cf842692ec692/content/test/data/accessibility/event/aria-combo-box-expand-expected-win.txt
[modify] https://crrev.com/3674d6f0ac52b4c7e3c21aa76f1cf842692ec692/content/test/data/accessibility/event/aria-combo-box-focus-expected-win.txt
[modify] https://crrev.com/3674d6f0ac52b4c7e3c21aa76f1cf842692ec692/content/test/data/accessibility/event/aria-combo-box-next-expected-win.txt
[modify] https://crrev.com/3674d6f0ac52b4c7e3c21aa76f1cf842692ec692/content/test/data/accessibility/event/listbox-next-expected-win.txt
[modify] https://crrev.com/3674d6f0ac52b4c7e3c21aa76f1cf842692ec692/third_party/WebKit/Source/core/dom/AccessibleNode.cpp
[modify] https://crrev.com/3674d6f0ac52b4c7e3c21aa76f1cf842692ec692/third_party/WebKit/Source/core/dom/AccessibleNode.h
[modify] https://crrev.com/3674d6f0ac52b4c7e3c21aa76f1cf842692ec692/third_party/WebKit/Source/modules/accessibility/AXObject.cpp

Project Member

Comment 13 by bugdroid1@chromium.org, Aug 7 2017

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

commit b8160a95fef2f80d6b7288cc7a41a7d3761ad8b8
Author: Dominic Mazzoni <dmazzoni@chromium.org>
Date: Mon Aug 07 07:23:06 2017

Refactor accessibility event messages.

Accessibility update messages and callbacks should all take:
* A tree ID (sometimes implicit)
* A single AXTreeUpdate representing a tree mutation
* Zero or more accessibility events

For historical reasons, most messages had a tree update inside each event.
This made sense before, but now we're moving towards events being mostly
implicit, so it should be more natural to send a tree update with no events.
There's no need for multiple tree updates since it's more efficient to just
merge multiple updates into the same AXTreeUpdate.

This was intended to be a pure-refactoring change with no side effects,
however one small logic change was needed to render_accessibility_impl.cc
to ensure the same node doesn't get serialized into an AXTreeUpdate twice.

It will make it easier to land future changes to make events more implicit.

Bug: 699438
Cq-Include-Trybots: master.tryserver.chromium.linux:linux_site_isolation
Change-Id: I3c8b4e98240d0e5d0497d886d7d2498931301c2e
Reviewed-on: https://chromium-review.googlesource.com/592848
Commit-Queue: Dominic Mazzoni <dmazzoni@chromium.org>
Reviewed-by: Tom Sepez <tsepez@chromium.org>
Reviewed-by: John Abd-El-Malek <jam@chromium.org>
Reviewed-by: Nico Weber <thakis@chromium.org>
Reviewed-by: Alice Boxhall <aboxhall@chromium.org>
Cr-Commit-Position: refs/heads/master@{#492276}
[modify] https://crrev.com/b8160a95fef2f80d6b7288cc7a41a7d3761ad8b8/chrome/browser/apps/guest_view/web_view_browsertest.cc
[modify] https://crrev.com/b8160a95fef2f80d6b7288cc7a41a7d3761ad8b8/chrome/browser/chromeos/arc/accessibility/ax_tree_source_arc.cc
[modify] https://crrev.com/b8160a95fef2f80d6b7288cc7a41a7d3761ad8b8/chrome/browser/extensions/api/automation_internal/automation_event_router.cc
[modify] https://crrev.com/b8160a95fef2f80d6b7288cc7a41a7d3761ad8b8/chrome/browser/extensions/api/automation_internal/automation_event_router.h
[modify] https://crrev.com/b8160a95fef2f80d6b7288cc7a41a7d3761ad8b8/chrome/browser/extensions/api/automation_internal/automation_internal_api.cc
[modify] https://crrev.com/b8160a95fef2f80d6b7288cc7a41a7d3761ad8b8/chrome/browser/ui/aura/accessibility/automation_manager_aura.cc
[modify] https://crrev.com/b8160a95fef2f80d6b7288cc7a41a7d3761ad8b8/chrome/common/extensions/chrome_extension_messages.h
[modify] https://crrev.com/b8160a95fef2f80d6b7288cc7a41a7d3761ad8b8/chrome/renderer/extensions/automation_internal_custom_bindings.cc
[modify] https://crrev.com/b8160a95fef2f80d6b7288cc7a41a7d3761ad8b8/chrome/renderer/extensions/automation_internal_custom_bindings.h
[modify] https://crrev.com/b8160a95fef2f80d6b7288cc7a41a7d3761ad8b8/content/browser/accessibility/accessibility_ipc_error_browsertest.cc
[modify] https://crrev.com/b8160a95fef2f80d6b7288cc7a41a7d3761ad8b8/content/browser/accessibility/browser_accessibility_manager.cc
[modify] https://crrev.com/b8160a95fef2f80d6b7288cc7a41a7d3761ad8b8/content/browser/accessibility/browser_accessibility_manager.h
[modify] https://crrev.com/b8160a95fef2f80d6b7288cc7a41a7d3761ad8b8/content/browser/accessibility/browser_accessibility_manager_mac.h
[modify] https://crrev.com/b8160a95fef2f80d6b7288cc7a41a7d3761ad8b8/content/browser/accessibility/browser_accessibility_manager_mac.mm
[modify] https://crrev.com/b8160a95fef2f80d6b7288cc7a41a7d3761ad8b8/content/browser/accessibility/browser_accessibility_manager_unittest.cc
[modify] https://crrev.com/b8160a95fef2f80d6b7288cc7a41a7d3761ad8b8/content/browser/accessibility/browser_accessibility_win_unittest.cc
[modify] https://crrev.com/b8160a95fef2f80d6b7288cc7a41a7d3761ad8b8/content/browser/frame_host/render_frame_host_delegate.h
[modify] https://crrev.com/b8160a95fef2f80d6b7288cc7a41a7d3761ad8b8/content/browser/frame_host/render_frame_host_impl.cc
[modify] https://crrev.com/b8160a95fef2f80d6b7288cc7a41a7d3761ad8b8/content/browser/frame_host/render_frame_host_impl.h
[modify] https://crrev.com/b8160a95fef2f80d6b7288cc7a41a7d3761ad8b8/content/browser/web_contents/web_contents_impl.cc
[modify] https://crrev.com/b8160a95fef2f80d6b7288cc7a41a7d3761ad8b8/content/browser/web_contents/web_contents_impl.h
[modify] https://crrev.com/b8160a95fef2f80d6b7288cc7a41a7d3761ad8b8/content/common/accessibility_messages.h
[modify] https://crrev.com/b8160a95fef2f80d6b7288cc7a41a7d3761ad8b8/content/public/browser/ax_event_notification_details.cc
[modify] https://crrev.com/b8160a95fef2f80d6b7288cc7a41a7d3761ad8b8/content/public/browser/ax_event_notification_details.h
[modify] https://crrev.com/b8160a95fef2f80d6b7288cc7a41a7d3761ad8b8/content/public/browser/web_contents_observer.h
[modify] https://crrev.com/b8160a95fef2f80d6b7288cc7a41a7d3761ad8b8/content/renderer/accessibility/render_accessibility_impl.cc
[modify] https://crrev.com/b8160a95fef2f80d6b7288cc7a41a7d3761ad8b8/content/renderer/accessibility/render_accessibility_impl_browsertest.cc
[modify] https://crrev.com/b8160a95fef2f80d6b7288cc7a41a7d3761ad8b8/content/test/data/accessibility/event/listbox-next-expected-win.txt

Project Member

Comment 14 by bugdroid1@chromium.org, Aug 9 2017

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

commit a7b0edb2ca0c4839581cce09351544ca7553059a
Author: Dominic Mazzoni <dmazzoni@chromium.org>
Date: Wed Aug 09 16:32:51 2017

Revert "Refactor accessibility event messages."

This reverts commit b8160a95fef2f80d6b7288cc7a41a7d3761ad8b8.

Reason for revert: Crashing on Windows (bug 753304)

Original change's description:
> Refactor accessibility event messages.
>
> Accessibility update messages and callbacks should all take:
> * A tree ID (sometimes implicit)
> * A single AXTreeUpdate representing a tree mutation
> * Zero or more accessibility events
>
> For historical reasons, most messages had a tree update inside each event.
> This made sense before, but now we're moving towards events being mostly
> implicit, so it should be more natural to send a tree update with no events.
> There's no need for multiple tree updates since it's more efficient to just
> merge multiple updates into the same AXTreeUpdate.
>
> This was intended to be a pure-refactoring change with no side effects,
> however one small logic change was needed to render_accessibility_impl.cc
> to ensure the same node doesn't get serialized into an AXTreeUpdate twice.
>
> It will make it easier to land future changes to make events more implicit.
>
> Bug: 699438
> Cq-Include-Trybots: master.tryserver.chromium.linux:linux_site_isolation
> Change-Id: I3c8b4e98240d0e5d0497d886d7d2498931301c2e
> Reviewed-on: https://chromium-review.googlesource.com/592848
> Commit-Queue: Dominic Mazzoni <dmazzoni@chromium.org>
> Reviewed-by: Tom Sepez <tsepez@chromium.org>
> Reviewed-by: John Abd-El-Malek <jam@chromium.org>
> Reviewed-by: Nico Weber <thakis@chromium.org>
> Reviewed-by: Alice Boxhall <aboxhall@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#492276}

TBR=dmazzoni@chromium.org,thakis@chromium.org,jam@chromium.org,aboxhall@chromium.org,tsepez@chromium.org,jam@google.com


Bug: 699438, 753304
Cq-Include-Trybots: master.tryserver.chromium.linux:linux_site_isolation
Change-Id: Ib6e35eb7e2a49b3a85e80a37aa50ad71e113fef9
Reviewed-on: https://chromium-review.googlesource.com/606894
Commit-Queue: Dominic Mazzoni <dmazzoni@chromium.org>
Reviewed-by: Dominic Mazzoni <dmazzoni@chromium.org>
Cr-Commit-Position: refs/heads/master@{#493016}
[modify] https://crrev.com/a7b0edb2ca0c4839581cce09351544ca7553059a/chrome/browser/apps/guest_view/web_view_browsertest.cc
[modify] https://crrev.com/a7b0edb2ca0c4839581cce09351544ca7553059a/chrome/browser/chromeos/arc/accessibility/ax_tree_source_arc.cc
[modify] https://crrev.com/a7b0edb2ca0c4839581cce09351544ca7553059a/chrome/browser/extensions/api/automation_internal/automation_event_router.cc
[modify] https://crrev.com/a7b0edb2ca0c4839581cce09351544ca7553059a/chrome/browser/extensions/api/automation_internal/automation_event_router.h
[modify] https://crrev.com/a7b0edb2ca0c4839581cce09351544ca7553059a/chrome/browser/extensions/api/automation_internal/automation_internal_api.cc
[modify] https://crrev.com/a7b0edb2ca0c4839581cce09351544ca7553059a/chrome/browser/ui/aura/accessibility/automation_manager_aura.cc
[modify] https://crrev.com/a7b0edb2ca0c4839581cce09351544ca7553059a/chrome/common/extensions/chrome_extension_messages.h
[modify] https://crrev.com/a7b0edb2ca0c4839581cce09351544ca7553059a/chrome/renderer/extensions/automation_internal_custom_bindings.cc
[modify] https://crrev.com/a7b0edb2ca0c4839581cce09351544ca7553059a/chrome/renderer/extensions/automation_internal_custom_bindings.h
[modify] https://crrev.com/a7b0edb2ca0c4839581cce09351544ca7553059a/content/browser/accessibility/accessibility_ipc_error_browsertest.cc
[modify] https://crrev.com/a7b0edb2ca0c4839581cce09351544ca7553059a/content/browser/accessibility/browser_accessibility_mac_unittest.mm
[modify] https://crrev.com/a7b0edb2ca0c4839581cce09351544ca7553059a/content/browser/accessibility/browser_accessibility_manager.cc
[modify] https://crrev.com/a7b0edb2ca0c4839581cce09351544ca7553059a/content/browser/accessibility/browser_accessibility_manager.h
[modify] https://crrev.com/a7b0edb2ca0c4839581cce09351544ca7553059a/content/browser/accessibility/browser_accessibility_manager_mac.h
[modify] https://crrev.com/a7b0edb2ca0c4839581cce09351544ca7553059a/content/browser/accessibility/browser_accessibility_manager_mac.mm
[modify] https://crrev.com/a7b0edb2ca0c4839581cce09351544ca7553059a/content/browser/accessibility/browser_accessibility_manager_unittest.cc
[modify] https://crrev.com/a7b0edb2ca0c4839581cce09351544ca7553059a/content/browser/accessibility/browser_accessibility_win_unittest.cc
[modify] https://crrev.com/a7b0edb2ca0c4839581cce09351544ca7553059a/content/browser/frame_host/render_frame_host_delegate.h
[modify] https://crrev.com/a7b0edb2ca0c4839581cce09351544ca7553059a/content/browser/frame_host/render_frame_host_impl.cc
[modify] https://crrev.com/a7b0edb2ca0c4839581cce09351544ca7553059a/content/browser/frame_host/render_frame_host_impl.h
[modify] https://crrev.com/a7b0edb2ca0c4839581cce09351544ca7553059a/content/browser/web_contents/web_contents_impl.cc
[modify] https://crrev.com/a7b0edb2ca0c4839581cce09351544ca7553059a/content/browser/web_contents/web_contents_impl.h
[modify] https://crrev.com/a7b0edb2ca0c4839581cce09351544ca7553059a/content/common/accessibility_messages.h
[modify] https://crrev.com/a7b0edb2ca0c4839581cce09351544ca7553059a/content/public/browser/ax_event_notification_details.cc
[modify] https://crrev.com/a7b0edb2ca0c4839581cce09351544ca7553059a/content/public/browser/ax_event_notification_details.h
[modify] https://crrev.com/a7b0edb2ca0c4839581cce09351544ca7553059a/content/public/browser/web_contents_observer.h
[modify] https://crrev.com/a7b0edb2ca0c4839581cce09351544ca7553059a/content/renderer/accessibility/render_accessibility_impl.cc
[modify] https://crrev.com/a7b0edb2ca0c4839581cce09351544ca7553059a/content/renderer/accessibility/render_accessibility_impl_browsertest.cc
[modify] https://crrev.com/a7b0edb2ca0c4839581cce09351544ca7553059a/content/test/data/accessibility/event/listbox-next-expected-win.txt

Labels: triage-dtseng
Status: started (was: Assigned)
Labels: -triage-dtseng
Project Member

Comment 18 by bugdroid1@chromium.org, Aug 31 2017

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

commit 4d523f7200371430b0a57d35b4a3b0ab617ce6f4
Author: Dominic Mazzoni <dmazzoni@chromium.org>
Date: Thu Aug 31 22:29:06 2017

Add AXEventGenerator class with unit tests.

This is a new class that observes changes to an AXTree and generates events
based on that.

This will replace existing code in content/browser/accessibility that tries
to do the same thing, with a cleaner implementation that's more abstracted
and with good unit-test coverage. The next follow-up will replace the
BrowserAccessibilityManager code with this, and future changes will use it
in Views, too.

This class is also more comprehensive, it fires every event currently handled
on Win, Mac, Linux, Android, and Chrome OS.

See design doc for more context:
https://docs.google.com/document/d/1KNEkdO1iQXLrCGs2uN2dAFlRGUGCUS3cNsK7pU7oE0Y

Bug: 699438
Change-Id: I182806386d7ddef59e5c7beddf851d203a7c0541
Reviewed-on: https://chromium-review.googlesource.com/611005
Commit-Queue: Dominic Mazzoni <dmazzoni@chromium.org>
Reviewed-by: David Tseng <dtseng@chromium.org>
Reviewed-by: Doug Turner <dougt@chromium.org>
Cr-Commit-Position: refs/heads/master@{#499049}
[modify] https://crrev.com/4d523f7200371430b0a57d35b4a3b0ab617ce6f4/ui/accessibility/BUILD.gn
[add] https://crrev.com/4d523f7200371430b0a57d35b4a3b0ab617ce6f4/ui/accessibility/ax_event_generator.cc
[add] https://crrev.com/4d523f7200371430b0a57d35b4a3b0ab617ce6f4/ui/accessibility/ax_event_generator.h
[add] https://crrev.com/4d523f7200371430b0a57d35b4a3b0ab617ce6f4/ui/accessibility/ax_event_generator_unittest.cc
[modify] https://crrev.com/4d523f7200371430b0a57d35b4a3b0ab617ce6f4/ui/accessibility/ax_tree.h

Project Member

Comment 19 by bugdroid1@chromium.org, Oct 24 2017

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

commit 6e0fe05135f93c0396ded47ded2731467d88b96d
Author: Dominic Mazzoni <dmazzoni@chromium.org>
Date: Tue Oct 24 07:29:31 2017

Use AXEventGenerator in content/browser/accessibility

This change removes all previous code to generate events
and relies on AXEventGenerator to automatically infer all
platform-native events to fire, except for these Blink
events that can't be inferred from a tree change.

CLICKED
HOVER
LAYOUT_COMPLETE
LOCATION_CHANGED
SCROLLED_TO_ANCHOR

Once we use AXEventGenerator in ChromeVox too, we'll be
able to remove the code that fires so many events from
Blink, and just send more generic tree changes instead.

Bug: 699438
Change-Id: I4d1e87d28669361ce0c628f8858479b061a4a47c
Reviewed-on: https://chromium-review.googlesource.com/683001
Reviewed-by: Antoine Labour <piman@chromium.org>
Reviewed-by: Aaron Leventhal <aleventhal@chromium.org>
Commit-Queue: Dominic Mazzoni <dmazzoni@chromium.org>
Cr-Commit-Position: refs/heads/master@{#511049}
[modify] https://crrev.com/6e0fe05135f93c0396ded47ded2731467d88b96d/content/browser/BUILD.gn
[modify] https://crrev.com/6e0fe05135f93c0396ded47ded2731467d88b96d/content/browser/accessibility/accessibility_mode_browsertest.cc
[modify] https://crrev.com/6e0fe05135f93c0396ded47ded2731467d88b96d/content/browser/accessibility/browser_accessibility.cc
[modify] https://crrev.com/6e0fe05135f93c0396ded47ded2731467d88b96d/content/browser/accessibility/browser_accessibility_android.cc
[modify] https://crrev.com/6e0fe05135f93c0396ded47ded2731467d88b96d/content/browser/accessibility/browser_accessibility_android.h
[modify] https://crrev.com/6e0fe05135f93c0396ded47ded2731467d88b96d/content/browser/accessibility/browser_accessibility_com_win.cc
[delete] https://crrev.com/c89e2d8602a1050fc99525f60f470441b43a14d1/content/browser/accessibility/browser_accessibility_event.cc
[delete] https://crrev.com/c89e2d8602a1050fc99525f60f470441b43a14d1/content/browser/accessibility/browser_accessibility_event.h
[delete] https://crrev.com/c89e2d8602a1050fc99525f60f470441b43a14d1/content/browser/accessibility/browser_accessibility_event_win.cc
[delete] https://crrev.com/c89e2d8602a1050fc99525f60f470441b43a14d1/content/browser/accessibility/browser_accessibility_event_win.h
[modify] https://crrev.com/6e0fe05135f93c0396ded47ded2731467d88b96d/content/browser/accessibility/browser_accessibility_manager.cc
[modify] https://crrev.com/6e0fe05135f93c0396ded47ded2731467d88b96d/content/browser/accessibility/browser_accessibility_manager.h
[modify] https://crrev.com/6e0fe05135f93c0396ded47ded2731467d88b96d/content/browser/accessibility/browser_accessibility_manager_android.cc
[modify] https://crrev.com/6e0fe05135f93c0396ded47ded2731467d88b96d/content/browser/accessibility/browser_accessibility_manager_android.h
[modify] https://crrev.com/6e0fe05135f93c0396ded47ded2731467d88b96d/content/browser/accessibility/browser_accessibility_manager_auralinux.cc
[modify] https://crrev.com/6e0fe05135f93c0396ded47ded2731467d88b96d/content/browser/accessibility/browser_accessibility_manager_auralinux.h
[modify] https://crrev.com/6e0fe05135f93c0396ded47ded2731467d88b96d/content/browser/accessibility/browser_accessibility_manager_mac.h
[modify] https://crrev.com/6e0fe05135f93c0396ded47ded2731467d88b96d/content/browser/accessibility/browser_accessibility_manager_mac.mm
[modify] https://crrev.com/6e0fe05135f93c0396ded47ded2731467d88b96d/content/browser/accessibility/browser_accessibility_manager_win.cc
[modify] https://crrev.com/6e0fe05135f93c0396ded47ded2731467d88b96d/content/browser/accessibility/browser_accessibility_manager_win.h
[modify] https://crrev.com/6e0fe05135f93c0396ded47ded2731467d88b96d/content/test/data/accessibility/event/aria-combo-box-collapse-expected-win.txt
[modify] https://crrev.com/6e0fe05135f93c0396ded47ded2731467d88b96d/content/test/data/accessibility/event/aria-combo-box-expand-expected-win.txt
[modify] https://crrev.com/6e0fe05135f93c0396ded47ded2731467d88b96d/content/test/data/accessibility/event/aria-combo-box-focus-expected-mac.txt
[modify] https://crrev.com/6e0fe05135f93c0396ded47ded2731467d88b96d/content/test/data/accessibility/event/aria-combo-box-focus-expected-win.txt
[modify] https://crrev.com/6e0fe05135f93c0396ded47ded2731467d88b96d/content/test/data/accessibility/event/aria-combo-box-next-expected-win.txt
[modify] https://crrev.com/6e0fe05135f93c0396ded47ded2731467d88b96d/content/test/data/accessibility/event/aria-treeitem-focus-expected-mac.txt
[modify] https://crrev.com/6e0fe05135f93c0396ded47ded2731467d88b96d/content/test/data/accessibility/event/listbox-next-expected-win.txt
[modify] https://crrev.com/6e0fe05135f93c0396ded47ded2731467d88b96d/ui/accessibility/ax_event_generator.cc
[modify] https://crrev.com/6e0fe05135f93c0396ded47ded2731467d88b96d/ui/accessibility/ax_event_generator.h
[modify] https://crrev.com/6e0fe05135f93c0396ded47ded2731467d88b96d/ui/accessibility/ax_event_generator_unittest.cc

Blocking: 787057
Project Member

Comment 21 by bugdroid1@chromium.org, Dec 11 2017

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

commit 598dbbb6667c07502959cb80d7b374a7bad60258
Author: Dominic Mazzoni <dmazzoni@chromium.org>
Date: Mon Dec 11 03:25:49 2017

Start to use AXEventGenerator in automation.

Adds support for AXEventGenerator in AutomationAXTreeWrapper, but to
be very conservative and safe, only uses it to fire "load complete"
events for now. Those events are really important and have both very
broad test coverage already, and are also easy to verify in manual tests.

In subsequent changes we'll switch over more and more events to come
from AXEventGenerator.

Bug: 699438
Change-Id: I30486c96689cc83dc24d8443b32dc4ee9069702b
Reviewed-on: https://chromium-review.googlesource.com/797214
Commit-Queue: Dominic Mazzoni <dmazzoni@chromium.org>
Reviewed-by: David Tseng <dtseng@chromium.org>
Cr-Commit-Position: refs/heads/master@{#523035}
[modify] https://crrev.com/598dbbb6667c07502959cb80d7b374a7bad60258/chrome/renderer/extensions/automation_ax_tree_wrapper.cc
[modify] https://crrev.com/598dbbb6667c07502959cb80d7b374a7bad60258/chrome/renderer/extensions/automation_ax_tree_wrapper.h
[modify] https://crrev.com/598dbbb6667c07502959cb80d7b374a7bad60258/chrome/renderer/extensions/automation_internal_custom_bindings.cc
[modify] https://crrev.com/598dbbb6667c07502959cb80d7b374a7bad60258/chrome/renderer/extensions/automation_internal_custom_bindings.h

Project Member

Comment 22 by bugdroid1@chromium.org, Dec 12 2017

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

commit f8adeabba6d0e90d2af5b9d27f2e95553449875a
Author: Dominic Mazzoni <dmazzoni@chromium.org>
Date: Tue Dec 12 16:14:10 2017

Move AXNotification to AXObjectCacheImpl

There was no need for AXNotification to be exposed in AXObjectCache.
It's more of an internal detail to accessibility and doesn't belong
in the public interface to it in core/dom.

This is a pure refactoring change only.

Bug: 699438
Change-Id: I17c02dd093d4857dab1ce015d4e55dd6bed567af
Reviewed-on: https://chromium-review.googlesource.com/820097
Reviewed-by: Mike West <mkwst@chromium.org>
Commit-Queue: Dominic Mazzoni <dmazzoni@chromium.org>
Cr-Commit-Position: refs/heads/master@{#523441}
[modify] https://crrev.com/f8adeabba6d0e90d2af5b9d27f2e95553449875a/third_party/WebKit/Source/core/dom/AXObjectCache.cpp
[modify] https://crrev.com/f8adeabba6d0e90d2af5b9d27f2e95553449875a/third_party/WebKit/Source/core/dom/AXObjectCache.h
[modify] https://crrev.com/f8adeabba6d0e90d2af5b9d27f2e95553449875a/third_party/WebKit/Source/modules/accessibility/AXObjectCacheImpl.cpp
[modify] https://crrev.com/f8adeabba6d0e90d2af5b9d27f2e95553449875a/third_party/WebKit/Source/modules/accessibility/AXObjectCacheImpl.h

Project Member

Comment 24 by bugdroid1@chromium.org, Dec 16 2017

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

commit 2a1c32dae820c7369767e868f29732670d8c1737
Author: Dominic Mazzoni <dmazzoni@chromium.org>
Date: Sat Dec 16 07:05:47 2017

Migrate some more automation events to AXEventGenerator.

Only 6 new events that ChromeVox actually uses are migrated by this
change. I added comments to the other events to keep track of which
ones are candidates for migration or for removal in the future.

Bug: 699438,  788893 
Change-Id: Ica13cd36369770242a20954c020e80f0f1fbff63
Reviewed-on: https://chromium-review.googlesource.com/820353
Commit-Queue: Dominic Mazzoni <dmazzoni@chromium.org>
Reviewed-by: David Tseng <dtseng@chromium.org>
Cr-Commit-Position: refs/heads/master@{#524598}
[modify] https://crrev.com/2a1c32dae820c7369767e868f29732670d8c1737/chrome/renderer/extensions/automation_ax_tree_wrapper.cc
[modify] https://crrev.com/2a1c32dae820c7369767e868f29732670d8c1737/chrome/test/data/extensions/api_test/automation/tests/desktop/hit_test.js
[modify] https://crrev.com/2a1c32dae820c7369767e868f29732670d8c1737/chrome/test/data/extensions/api_test/automation/tests/tabs/hit_test.js

Blockedon: 848043
Project Member

Comment 26 by bugdroid1@chromium.org, Sep 10

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

commit 1e7ae38954578d85788aa81a77dc351107eacd0e
Author: Dominic Mazzoni <dmazzoni@chromium.org>
Date: Mon Sep 10 18:03:37 2018

Switch 4 more automation events to AXEventGenerator

These four events are (1) properly covered by AXEventGenerator,
(2) don't have any very specific logic in ChromeVox, they just
call onEventIfInRange, and (3) they aren't ever fired by views
in a place where AXEventGenerator wouldn't be able to infer the
same event.

For those reasons, these 4 are safe to switch over.

Bug: 699438
Change-Id: I05037a29e63e01b2be1a23c1057750ada24f0172
Reviewed-on: https://chromium-review.googlesource.com/1215058
Reviewed-by: David Tseng <dtseng@chromium.org>
Commit-Queue: Dominic Mazzoni <dmazzoni@chromium.org>
Cr-Commit-Position: refs/heads/master@{#589977}
[modify] https://crrev.com/1e7ae38954578d85788aa81a77dc351107eacd0e/chrome/renderer/extensions/automation_ax_tree_wrapper.cc

Project Member

Comment 27 by bugdroid1@chromium.org, Sep 13

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

commit bb51278c560cbafac2c1f2abc4dfc87d86e2bd2b
Author: Dominic Mazzoni <dmazzoni@chromium.org>
Date: Thu Sep 13 16:16:06 2018

Introduce MarkWebAXObjectDirty

Previously the only way for Blink to communicate a change
to the accessibility tree was via PostAccessibilityEvent.
Over time we've been migrating away from blink posting
events, and instead having it just serialize changed nodes
and let each platform infer the events it needs to fire.

Much of this refactoring has already happened, so now
we can start removing accessibility events.

This change introduces a new API, MarkWebAXObjectDirty,
which lets Blink queue up a node or a subtree to be
serialized. It uses this new API for just one event,
ActiveDescendantChanged. In follow-up changes we'll
tackle additional events, there are at least 10 ready
to migrate.

This should lead to simplification of Blink accessibility
code overall.

Note that work to remove the content/renderer/accessibility
layer is also underway, but this change shouldn't block
until that completes. Eventually, marking a node dirty
will happen within Blink and it will serialize and send
updates directly to the browser via mojo.

Bug: 699438

Change-Id: I51d194aca593217413132ae0052e49c29391cc11
Reviewed-on: https://chromium-review.googlesource.com/1218443
Reviewed-by: Kentaro Hara <haraken@chromium.org>
Reviewed-by: Alice Boxhall <aboxhall@chromium.org>
Commit-Queue: Dominic Mazzoni <dmazzoni@chromium.org>
Cr-Commit-Position: refs/heads/master@{#591033}
[modify] https://crrev.com/bb51278c560cbafac2c1f2abc4dfc87d86e2bd2b/content/renderer/accessibility/render_accessibility_impl.cc
[modify] https://crrev.com/bb51278c560cbafac2c1f2abc4dfc87d86e2bd2b/content/renderer/accessibility/render_accessibility_impl.h
[modify] https://crrev.com/bb51278c560cbafac2c1f2abc4dfc87d86e2bd2b/content/renderer/render_frame_impl.cc
[modify] https://crrev.com/bb51278c560cbafac2c1f2abc4dfc87d86e2bd2b/content/renderer/render_frame_impl.h
[modify] https://crrev.com/bb51278c560cbafac2c1f2abc4dfc87d86e2bd2b/content/shell/test_runner/web_frame_test_client.cc
[modify] https://crrev.com/bb51278c560cbafac2c1f2abc4dfc87d86e2bd2b/content/shell/test_runner/web_frame_test_client.h
[modify] https://crrev.com/bb51278c560cbafac2c1f2abc4dfc87d86e2bd2b/content/shell/test_runner/web_frame_test_proxy.cc
[modify] https://crrev.com/bb51278c560cbafac2c1f2abc4dfc87d86e2bd2b/content/shell/test_runner/web_frame_test_proxy.h
[modify] https://crrev.com/bb51278c560cbafac2c1f2abc4dfc87d86e2bd2b/content/test/data/accessibility/event/aria-combo-box-next-expected-win.txt
[modify] https://crrev.com/bb51278c560cbafac2c1f2abc4dfc87d86e2bd2b/third_party/WebKit/LayoutTests/accessibility/aria-activedescendant-events.html
[modify] https://crrev.com/bb51278c560cbafac2c1f2abc4dfc87d86e2bd2b/third_party/WebKit/LayoutTests/fast/forms/calendar-picker/date-picker-ax-expected.txt
[modify] https://crrev.com/bb51278c560cbafac2c1f2abc4dfc87d86e2bd2b/third_party/WebKit/LayoutTests/fast/forms/calendar-picker/date-picker-ax.html
[modify] https://crrev.com/bb51278c560cbafac2c1f2abc4dfc87d86e2bd2b/third_party/WebKit/LayoutTests/fast/forms/calendar-picker/month-picker-ax-expected.txt
[modify] https://crrev.com/bb51278c560cbafac2c1f2abc4dfc87d86e2bd2b/third_party/WebKit/LayoutTests/fast/forms/calendar-picker/month-picker-ax.html
[modify] https://crrev.com/bb51278c560cbafac2c1f2abc4dfc87d86e2bd2b/third_party/WebKit/LayoutTests/fast/forms/calendar-picker/week-picker-ax-expected.txt
[modify] https://crrev.com/bb51278c560cbafac2c1f2abc4dfc87d86e2bd2b/third_party/WebKit/LayoutTests/fast/forms/calendar-picker/week-picker-ax.html
[modify] https://crrev.com/bb51278c560cbafac2c1f2abc4dfc87d86e2bd2b/third_party/blink/public/web/web_local_frame_client.h
[modify] https://crrev.com/bb51278c560cbafac2c1f2abc4dfc87d86e2bd2b/third_party/blink/renderer/modules/accessibility/ax_layout_object.cc
[modify] https://crrev.com/bb51278c560cbafac2c1f2abc4dfc87d86e2bd2b/third_party/blink/renderer/modules/accessibility/ax_object_cache_impl.cc
[modify] https://crrev.com/bb51278c560cbafac2c1f2abc4dfc87d86e2bd2b/third_party/blink/renderer/modules/accessibility/ax_object_cache_impl.h

Sign in to add a comment