Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(432)

Issue 2618513003: AXTreeCombiner no longer needs to convert to global coordinates. (Closed)

Created:
3 years, 11 months ago by sgurun-gerrit only
Modified:
3 years, 11 months ago
Reviewers:
CC:
chromium-reviews
Target Ref:
refs/pending/branch-heads/2924
Project:
chromium
Visibility:
Public.

Description

AXTreeCombiner no longer needs to convert to global coordinates. AXTreeCombiner is used to combine accessibility trees from multiple frames in order to create a single accessibility tree, used to provide information about a web page to the Android assist API, used by features like Now-on-Tap. Prior to change https://codereview.chromium.org/2217363002, only the root frame of an accessibility tree was allowed to have a transformation matrix. So in order to combine frames, AXTreeCombiner had to apply transformation matrices manually, and make all coordinates global, otherwise the downstream consumer of the accessibility tree wouldn't apply transformation matrices from subframes. That worked, but then in change 2217363002, we made all accessibility coordinates relative, by allowing transformation matrices anywhere in the tree. This eliminated the need for AXTreeCombiner to make all coordinates global, but AXTreeCombiner was improperly updated in this change, and in many circumstances it was pretending to return global coordinates but not actually fully implement the new local-to-global protocol as documented in ax_relative_bounds.h. The proper fix is to simplify AXTreeCombiner. It's no longer necessary for it to modify coordinates and apply transformation matrices at all. Just leaving the coordinates alone now works correctly. More end-to-end testing is needed. ax_tree_combiner_unittest only tests the tree combining, and now that coordinates are passed through unmodified, there's nothing really to test. We need a test of Java_WebContentsImpl_onAccessibilitySnapshot that tests the resulting coordinates passed to Java. BUG=673935 Review-Url: https://codereview.chromium.org/2572923002 Cr-Commit-Position: refs/heads/master@{#438572} (cherry picked from commit cbc8b96da2d7987a42ededb8017b2f0aca445553) Committed: https://chromium.googlesource.com/chromium/src/+/8d6ddb0ef53db84aa3f192ad6c42578179a422a0

Patch Set 1 #

Unified diffs Side-by-side diffs Delta from patch set Stats (+4 lines, -71 lines) Patch
M ui/accessibility/ax_tree_combiner.h View 3 chunks +1 line, -4 lines 0 comments Download
M ui/accessibility/ax_tree_combiner.cc View 4 chunks +3 lines, -16 lines 0 comments Download
M ui/accessibility/ax_tree_combiner_unittest.cc View 1 chunk +0 lines, -51 lines 0 comments Download

Messages

Total messages: 2 (1 generated)
sgurun-gerrit only
3 years, 11 months ago (2017-01-04 22:00:51 UTC) #2
Message was sent while issue was closed.
Committed patchset #1 (id:1) manually as
8d6ddb0ef53db84aa3f192ad6c42578179a422a0.

Powered by Google App Engine
This is Rietveld 408576698