Issue metadata
Sign in to add a comment
|
IAccessible2::accLocation() returns incorrect location for off-screen objects. |
||||||||||||||||||||||
Issue descriptionUserAgent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/64.0.3282.140 Safari/537.36 Steps to reproduce the problem: If an object on a page is not in view - so it could be visible if the page or frame was scrolled, then the rect reported by IAccessible2::accLocation to 3rd party AT products is incorrect. The rectangle reported has the wrong height and width (depending on which way the frame scrolls) and is reported at the wrong location. What is the expected behavior? the width and height should be the size of the object. The location should be off screen, at a position where it is still relative to the page based on the scrolling ammount. What went wrong? component:UI>Accessibility>Compatibility The rectangle reported seems to have been moved and clipped to a 1 pixel sized object at the edge of the frame. This contradicts the specification for IAccessible::accLocation(). This means that an AT aid no longer can tell if an object is off-screen because it's not reported with an off screen rectangle, also an AT aid can not calculate correct values for IAccessible2::scrollToPoint() because it doesn't know where the object is or it's size. Did this work before? Yes 63 (not sure what minor version) Chrome version: 64.0.3282.140 Channel: stable OS Version: 10.0 Flash Version: Shockwave Flash 28.0 r0 This is a critical regression. We are going to have to recommend that customers use Firefox until this is fixed.
,
Feb 10 2018
,
Feb 11 2018
,
Feb 12 2018
Thanks for filing the issue!! @Reporter: Could you please provide sample test file/URL to test this issue.If possible please guide us with a screencast to reproduce this issue with sample file. This will help in triaging the issue in a better way. Thanks!
,
Feb 26 2018
I'm going to revert back to the old behavior of accLocation. AT definitely seems to depend on knowing the "true" bounds.
,
Mar 1 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/e091bb4fe9e5c1919c5f1a88b6e2a1bc9a27a19f commit e091bb4fe9e5c1919c5f1a88b6e2a1bc9a27a19f Author: Dominic Mazzoni <dmazzoni@chromium.org> Date: Thu Mar 01 07:47:52 2018 accLocation should return unclipped bounds. See bug for motivation. Adds separate AXPlatformNodeDelegate interfaces for clipped and unclipped for maximum code clarity. Note that we still want clipped bounds around for hit testing. Bug: 810762 Change-Id: I1b08977e9753fb918b6a4b41f152a238caae12e3 Reviewed-on: https://chromium-review.googlesource.com/938024 Commit-Queue: Dominic Mazzoni <dmazzoni@chromium.org> Reviewed-by: Katie Dektar <katie@chromium.org> Reviewed-by: Nektarios Paisios <nektar@chromium.org> Cr-Commit-Position: refs/heads/master@{#540094} [modify] https://crrev.com/e091bb4fe9e5c1919c5f1a88b6e2a1bc9a27a19f/content/browser/accessibility/browser_accessibility.cc [modify] https://crrev.com/e091bb4fe9e5c1919c5f1a88b6e2a1bc9a27a19f/content/browser/accessibility/browser_accessibility.h [modify] https://crrev.com/e091bb4fe9e5c1919c5f1a88b6e2a1bc9a27a19f/content/browser/accessibility/browser_accessibility_com_win.cc [modify] https://crrev.com/e091bb4fe9e5c1919c5f1a88b6e2a1bc9a27a19f/content/browser/accessibility/browser_accessibility_manager.cc [modify] https://crrev.com/e091bb4fe9e5c1919c5f1a88b6e2a1bc9a27a19f/content/test/data/accessibility/html/iframe-coordinates-cross-process-expected-win.txt [modify] https://crrev.com/e091bb4fe9e5c1919c5f1a88b6e2a1bc9a27a19f/content/test/data/accessibility/html/iframe-coordinates-expected-win.txt [modify] https://crrev.com/e091bb4fe9e5c1919c5f1a88b6e2a1bc9a27a19f/ui/accessibility/platform/ax_platform_node_auralinux.cc [modify] https://crrev.com/e091bb4fe9e5c1919c5f1a88b6e2a1bc9a27a19f/ui/accessibility/platform/ax_platform_node_base.cc [modify] https://crrev.com/e091bb4fe9e5c1919c5f1a88b6e2a1bc9a27a19f/ui/accessibility/platform/ax_platform_node_base.h [modify] https://crrev.com/e091bb4fe9e5c1919c5f1a88b6e2a1bc9a27a19f/ui/accessibility/platform/ax_platform_node_delegate.h [modify] https://crrev.com/e091bb4fe9e5c1919c5f1a88b6e2a1bc9a27a19f/ui/accessibility/platform/ax_platform_node_mac.mm [modify] https://crrev.com/e091bb4fe9e5c1919c5f1a88b6e2a1bc9a27a19f/ui/accessibility/platform/ax_platform_node_win.cc [modify] https://crrev.com/e091bb4fe9e5c1919c5f1a88b6e2a1bc9a27a19f/ui/accessibility/platform/ax_system_caret_win.cc [modify] https://crrev.com/e091bb4fe9e5c1919c5f1a88b6e2a1bc9a27a19f/ui/accessibility/platform/ax_system_caret_win.h [modify] https://crrev.com/e091bb4fe9e5c1919c5f1a88b6e2a1bc9a27a19f/ui/accessibility/platform/test_ax_node_wrapper.cc [modify] https://crrev.com/e091bb4fe9e5c1919c5f1a88b6e2a1bc9a27a19f/ui/accessibility/platform/test_ax_node_wrapper.h [modify] https://crrev.com/e091bb4fe9e5c1919c5f1a88b6e2a1bc9a27a19f/ui/views/accessibility/native_view_accessibility_auralinux.cc [modify] https://crrev.com/e091bb4fe9e5c1919c5f1a88b6e2a1bc9a27a19f/ui/views/accessibility/native_view_accessibility_base.cc [modify] https://crrev.com/e091bb4fe9e5c1919c5f1a88b6e2a1bc9a27a19f/ui/views/accessibility/native_view_accessibility_base.h [modify] https://crrev.com/e091bb4fe9e5c1919c5f1a88b6e2a1bc9a27a19f/ui/views/accessibility/native_view_accessibility_unittest.cc
,
Mar 16 2018
As fix is already been landed as per comment#6, removing Needs-Bisect and Needs-Feedback labels. Thanks!
,
Jan 11
This issue has been marked as started, but has no owner. Making available. |
|||||||||||||||||||||||
►
Sign in to add a comment |
|||||||||||||||||||||||
Comment 1 by dtapu...@chromium.org
, Feb 10 2018