Issue metadata
Sign in to add a comment
|
IAccessible2::scrollTo() ignores actual visibility |
||||||||||||||||||||
Issue descriptionIf you call IAccessible2::scrollTo(IA2_SCROLL_TYPE_ANYWHERE) it's supposed to make the element visible. However, if the web page is constructed with fixed size objects that overlap the scroll-able area, then it scrolls the page to make the element fit within the bounds of the scroll-able area, but does not take into account any objects on top of that area, so the element may end up still not actually visible. An example of this is the spotify web player. The player controls bar across the bottom of the page is a fixed object. The playlist scrolls up and down below this object. ScrollTo() will bring an object into view, but may position it underneath the player controls so you still can't actually see it.
,
Dec 19
I agree that this is tricky and you could construct difficult pages to break this, however most real world examples are very simple and usually just have the object clipped on one or more edges. I would suggest you work out the visible region of the scroll-able area. If this is a rect, then that's what you need to move the element into to make it visible. If it's more complex then maybe pick the largest sub-rectangle, or center the element on the bounding rect of the region. |
|||||||||||||||||||||
►
Sign in to add a comment |
|||||||||||||||||||||
Comment 1 by dmazz...@chromium.org
, Jun 25 2018