|
|
Created:
3 years, 9 months ago by dougt Modified:
3 years, 8 months ago Reviewers:
dmazzoni CC:
chromium-reviews, aboxhall+watch_chromium.org, nektar+watch_chromium.org, jam, yuzo+watch_chromium.org, je_julie, darin-cc_chromium.org, dmazzoni+watch_chromium.org, dtseng+watch_chromium.org Target Ref:
refs/heads/master Project:
chromium Visibility:
Public. |
DescriptionImplement BrowserAccessibility accLocation in terms of AXPlatformNodeWin.
Here we are implementing one IAccessibility method, accLocation(), in terms of
ui::AXPlatformNodeWin. The idea is that we can forward IAccessibility calls to
ui::AXPlatformNodeWin and then slowly trim down, and maybe remove,
BrowserAccessibilityWin.
This CL adds a small helper method that allows the cast conversation of
platform_node_, which is created in AXPlatformNode, from a AXPlatformNode to
AXPlatformNodeWin. If this result is nullptr, we will fall back to using the
BrowserAccessibilityWin implementation.
BUG=703369
Review-Url: https://codereview.chromium.org/2763043002
Cr-Commit-Position: refs/heads/master@{#462978}
Committed: https://chromium.googlesource.com/chromium/src/+/9f99a6f415f9a0caaae84ed0a768b8c63e3fceb3
Patch Set 1 : Use delegate's GetScreenBoundsRect() #Patch Set 2 : Implement BrowserAccessibility accLocation in terms of AXPlatformNodeWin. #
Depends on Patchset: Messages
Total messages: 29 (23 generated)
dougt@chromium.org changed reviewers: + dmazzoni@chromium.org
dmazzoni, ptal.
The CQ bit was checked by dougt@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: win_clang on master.tryserver.chromium.win (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.win/builders/win_clang/builds/...)
I don't think this will work. Once the other changes have landed let's run try jobs, but I'm pretty sure this will break inside iframes and when a page uses transformation matrices. We should probably add a function to AXPlatformNodeDelegate to get screen coordinates directly. In Views we've been able to get away with a simple model of local coordinates plus a global offset, but on the web there are the possibilities of nested transformations like rotation and scaling. https://codereview.chromium.org/2763043002/diff/20001/content/browser/accessi... File content/browser/accessibility/browser_accessibility_win.cc (right): https://codereview.chromium.org/2763043002/diff/20001/content/browser/accessi... content/browser/accessibility/browser_accessibility_win.cc:480: return platform_node->accLocation(x_left, y_top, width, height, var_id); If we do this, shouldn't we delete the rest of this implementation? I'd prefer to just delete old code as we go rather than maintain both implementations. If there are regressions I want to catch them and revert. Or convince me otherwise. But I don't think a Finch experiment would help because we rely a lot on certain key testers and I'd rather we just break things for everyone and fix them quickly rather than A/B test for a long time.
The CQ bit was checked by dougt@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: cast_shell_linux on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/cast_shell_linu...)
Patchset #2 (id:20001) has been deleted
Description was changed from ========== Implement BrowserAccessibility accLocation in terms of AXPlatformNodeWin. Here we are implementing one IAccessibility method, accLocation(), in terms of ui::AXPlatformNodeWin. The idea is that we can forward IAccessibility calls to ui::AXPlatformNodeWin and then slowly trim down, and maybe remove, BrowserAccessibilityWin. This CL adds a small helper method that allows the cast conversation of platform_node_, which is created in AXPlatformNode, from a AXPlatformNode to AXPlatformNodeWin. If this result is nullptr, we will fall back to using the BrowserAccessibilityWin implementation. Also, this CL implements BrowserAccessibility delegate methods GetData and GetGlobalCoordinateOffset. BUG=703369 ========== to ========== Implement BrowserAccessibility accLocation in terms of AXPlatformNodeWin. Here we are implementing one IAccessibility method, accLocation(), in terms of ui::AXPlatformNodeWin. The idea is that we can forward IAccessibility calls to ui::AXPlatformNodeWin and then slowly trim down, and maybe remove, BrowserAccessibilityWin. This CL adds a small helper method that allows the cast conversation of platform_node_, which is created in AXPlatformNode, from a AXPlatformNode to AXPlatformNodeWin. If this result is nullptr, we will fall back to using the BrowserAccessibilityWin implementation. BUG=703369 ==========
The CQ bit was checked by dougt@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
Patchset #1 (id:1) has been deleted
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: win_chromium_x64_rel_ng on master.tryserver.chromium.win (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.win/builders/win_chromium_x64_...)
The CQ bit was checked by dougt@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: This issue passed the CQ dry run.
lgtm I would like to see you check in content/test/data/accessibility/html/iframe-transform-expected-win.txt as part of this change which will show that this change works correctly when transforms are involved
On 2017/04/07 18:26:17, dmazzoni wrote: > lgtm > > I would like to see you check in > content/test/data/accessibility/html/iframe-transform-expected-win.txt as part > of this change which will show that this change works correctly when transforms > are involved Of course! See Issue 2802173002. Might need some test framework love, but it's on my radar.
The CQ bit was checked by dougt@chromium.org
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
CQ is committing da patch. Bot data: {"patchset_id": 60001, "attempt_start_ts": 1491595203891080, "parent_rev": "026e9c4a99abfba45671badb3e0ec8fa2f0b672f", "commit_rev": "9f99a6f415f9a0caaae84ed0a768b8c63e3fceb3"}
Message was sent while issue was closed.
Description was changed from ========== Implement BrowserAccessibility accLocation in terms of AXPlatformNodeWin. Here we are implementing one IAccessibility method, accLocation(), in terms of ui::AXPlatformNodeWin. The idea is that we can forward IAccessibility calls to ui::AXPlatformNodeWin and then slowly trim down, and maybe remove, BrowserAccessibilityWin. This CL adds a small helper method that allows the cast conversation of platform_node_, which is created in AXPlatformNode, from a AXPlatformNode to AXPlatformNodeWin. If this result is nullptr, we will fall back to using the BrowserAccessibilityWin implementation. BUG=703369 ========== to ========== Implement BrowserAccessibility accLocation in terms of AXPlatformNodeWin. Here we are implementing one IAccessibility method, accLocation(), in terms of ui::AXPlatformNodeWin. The idea is that we can forward IAccessibility calls to ui::AXPlatformNodeWin and then slowly trim down, and maybe remove, BrowserAccessibilityWin. This CL adds a small helper method that allows the cast conversation of platform_node_, which is created in AXPlatformNode, from a AXPlatformNode to AXPlatformNodeWin. If this result is nullptr, we will fall back to using the BrowserAccessibilityWin implementation. BUG=703369 Review-Url: https://codereview.chromium.org/2763043002 Cr-Commit-Position: refs/heads/master@{#462978} Committed: https://chromium.googlesource.com/chromium/src/+/9f99a6f415f9a0caaae84ed0a768... ==========
Message was sent while issue was closed.
Committed patchset #2 (id:60001) as https://chromium.googlesource.com/chromium/src/+/9f99a6f415f9a0caaae84ed0a768... |