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

Issue 2047873002: Add interface to get relative bounding box rect of AX objects. (Closed)

Created:
4 years, 6 months ago by dmazzoni
Modified:
4 years, 6 months ago
Reviewers:
chrishtr, aboxhall
CC:
aboxhall, aboxhall+watch_chromium.org, blink-reviews, blink-reviews-api_chromium.org, chromium-reviews, dglazkov+blink, dmazzoni+watch_chromium.org, dtseng+watch_chromium.org, haraken, je_julie, jochen+watch_chromium.org, kinuko+watch, mlamouri+watch-test-runner_chromium.org, nektar+watch_chromium.org, nektarios, yuzo+watch_chromium.org
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Add interface to get relative bounding box rect of AX objects. Currently accessibility bounding box rects are absolute coordinates within their frames. This means we have to recompute the bounding box of every AX object when part of the page scrolls or animates. To improve efficiency, this patch adds a new interface that returns the relative bounds of an object, consisting of three pieces: * Its "container" (an ancestor that scrolls or has a paint layer) * Its bounding box relative to its container * Optionally, its matrix transform relative to its container This patch just implements the new interface and tests it. Adds test_runner interfaces to access this interface at a low level (relative bounds) and high level (computed bounds) plus interfaces for accessing the scroll position. This will be followed up with a patch to use this interface instead throughout the rest of Chrome, and then delete the old interface. BUG=618120 Committed: https://crrev.com/e51c64c415fe268350cb451e4678284ae5c8433f Cr-Commit-Position: refs/heads/master@{#399230}

Patch Set 1 #

Patch Set 2 : Rebase #

Patch Set 3 : Remove incorrect dependent patchset #

Patch Set 4 : Guard DCHECK #

Patch Set 5 : Separate out one change that broke existing tests #

Total comments: 15

Patch Set 6 : Address feedback from aboxhall, add aria-owns test #

Unified diffs Side-by-side diffs Delta from patch set Stats (+514 lines, -3 lines) Patch
M components/test_runner/web_ax_object_proxy.h View 1 2 3 4 5 2 chunks +12 lines, -0 lines 0 comments Download
M components/test_runner/web_ax_object_proxy.cc View 1 2 3 4 5 7 chunks +135 lines, -1 line 0 comments Download
A third_party/WebKit/LayoutTests/accessibility/bounds-calc.html View 1 2 3 4 5 1 chunk +250 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/modules/accessibility/AXLayoutObject.h View 1 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/Source/modules/accessibility/AXLayoutObject.cpp View 1 2 3 4 1 chunk +64 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/modules/accessibility/AXObject.h View 1 1 chunk +13 lines, -1 line 0 comments Download
M third_party/WebKit/Source/modules/accessibility/AXObject.cpp View 1 1 chunk +7 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/web/WebAXObject.cpp View 1 2 3 2 chunks +17 lines, -0 lines 0 comments Download
M third_party/WebKit/public/web/WebAXObject.h View 1 2 3 4 5 3 chunks +15 lines, -1 line 0 comments Download

Messages

Total messages: 20 (6 generated)
dmazzoni
aboxhall: please review everything chrishtr: this is a follow-up to crrev.com/1777613002 where I added localToAncestorTransform. ...
4 years, 6 months ago (2016-06-07 22:23:57 UTC) #2
chrishtr
https://codereview.chromium.org/2047873002/diff/80001/third_party/WebKit/Source/modules/accessibility/AXLayoutObject.cpp File third_party/WebKit/Source/modules/accessibility/AXLayoutObject.cpp (right): https://codereview.chromium.org/2047873002/diff/80001/third_party/WebKit/Source/modules/accessibility/AXLayoutObject.cpp#newcode289 third_party/WebKit/Source/modules/accessibility/AXLayoutObject.cpp:289: LayoutRect localBounds; Does visualOverflowRect() meet your needs? There is ...
4 years, 6 months ago (2016-06-09 22:24:53 UTC) #3
dmazzoni
https://codereview.chromium.org/2047873002/diff/80001/third_party/WebKit/Source/modules/accessibility/AXLayoutObject.cpp File third_party/WebKit/Source/modules/accessibility/AXLayoutObject.cpp (right): https://codereview.chromium.org/2047873002/diff/80001/third_party/WebKit/Source/modules/accessibility/AXLayoutObject.cpp#newcode289 third_party/WebKit/Source/modules/accessibility/AXLayoutObject.cpp:289: LayoutRect localBounds; On 2016/06/09 22:24:53, chrishtr wrote: > Does ...
4 years, 6 months ago (2016-06-09 22:45:29 UTC) #4
aboxhall
lgtm https://codereview.chromium.org/2047873002/diff/80001/components/test_runner/web_ax_object_proxy.cc File components/test_runner/web_ax_object_proxy.cc (right): https://codereview.chromium.org/2047873002/diff/80001/components/test_runner/web_ax_object_proxy.cc#newcode325 components/test_runner/web_ax_object_proxy.cc:325: gfx::RectF boundsf(0, 0, bounds.width, bounds.height); What does the ...
4 years, 6 months ago (2016-06-09 23:05:30 UTC) #5
chrishtr
https://codereview.chromium.org/2047873002/diff/80001/third_party/WebKit/Source/modules/accessibility/AXLayoutObject.cpp File third_party/WebKit/Source/modules/accessibility/AXLayoutObject.cpp (right): https://codereview.chromium.org/2047873002/diff/80001/third_party/WebKit/Source/modules/accessibility/AXLayoutObject.cpp#newcode289 third_party/WebKit/Source/modules/accessibility/AXLayoutObject.cpp:289: LayoutRect localBounds; On 2016/06/09 at 22:45:29, dmazzoni wrote: > ...
4 years, 6 months ago (2016-06-09 23:06:42 UTC) #6
dmazzoni
On 2016/06/09 23:06:42, chrishtr wrote: > https://codereview.chromium.org/2047873002/diff/80001/third_party/WebKit/Source/modules/accessibility/AXLayoutObject.cpp > File third_party/WebKit/Source/modules/accessibility/AXLayoutObject.cpp (right): > > https://codereview.chromium.org/2047873002/diff/80001/third_party/WebKit/Source/modules/accessibility/AXLayoutObject.cpp#newcode289 > ...
4 years, 6 months ago (2016-06-09 23:31:57 UTC) #7
dmazzoni
https://codereview.chromium.org/2047873002/diff/80001/components/test_runner/web_ax_object_proxy.cc File components/test_runner/web_ax_object_proxy.cc (right): https://codereview.chromium.org/2047873002/diff/80001/components/test_runner/web_ax_object_proxy.cc#newcode325 components/test_runner/web_ax_object_proxy.cc:325: gfx::RectF boundsf(0, 0, bounds.width, bounds.height); On 2016/06/09 23:05:30, aboxhall ...
4 years, 6 months ago (2016-06-10 16:55:40 UTC) #9
chrishtr
On 2016/06/09 at 23:31:57, dmazzoni wrote: > On 2016/06/09 23:06:42, chrishtr wrote: > > https://codereview.chromium.org/2047873002/diff/80001/third_party/WebKit/Source/modules/accessibility/AXLayoutObject.cpp ...
4 years, 6 months ago (2016-06-10 16:58:54 UTC) #10
chrishtr
lgtm
4 years, 6 months ago (2016-06-10 16:59:00 UTC) #11
dmazzoni
On 2016/06/10 16:58:54, chrishtr wrote: > On 2016/06/09 at 23:31:57, dmazzoni wrote: > > On ...
4 years, 6 months ago (2016-06-10 17:02:20 UTC) #12
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/2047873002/100001
4 years, 6 months ago (2016-06-10 17:02:49 UTC) #15
commit-bot: I haz the power
Committed patchset #6 (id:100001)
4 years, 6 months ago (2016-06-10 18:11:27 UTC) #17
commit-bot: I haz the power
CQ bit was unchecked
4 years, 6 months ago (2016-06-10 18:11:41 UTC) #18
commit-bot: I haz the power
4 years, 6 months ago (2016-06-10 18:13:13 UTC) #20
Message was sent while issue was closed.
Patchset 6 (id:??) landed as
https://crrev.com/e51c64c415fe268350cb451e4678284ae5c8433f
Cr-Commit-Position: refs/heads/master@{#399230}

Powered by Google App Engine
This is Rietveld 408576698