Bug 38590 - Spatial Navigation: refactor hasOffscreenRect to work with scrollable content
Summary: Spatial Navigation: refactor hasOffscreenRect to work with scrollable content
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: Accessibility (show other bugs)
Version: 528+ (Nightly build)
Hardware: PC All
: P2 Normal
Assignee: Antonio Gomes
URL:
Keywords:
Depends on: 36463
Blocks: 46905
  Show dependency treegraph
 
Reported: 2010-05-05 09:03 PDT by Antonio Gomes
Modified: 2011-05-11 09:38 PDT (History)
3 users (show)

See Also:


Attachments
patch v1 (8.28 KB, patch)
2010-05-05 09:07 PDT, Antonio Gomes
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Antonio Gomes 2010-05-05 09:03:44 PDT
hasOffscreenRect method in SpatialNavigation.cpp currently does not works fine for focusable elements in overflowed content.

it needs a refactoring for that.
Comment 1 Antonio Gomes 2010-05-05 09:07:51 PDT
Created attachment 55130 [details]
patch v1

no requestion review as patch depends on patch on bug 36463
Comment 2 Chang Shu 2010-10-06 06:47:08 PDT
This patch needs a re-baseline.
Comment 3 Yael 2010-10-09 14:32:26 PDT
IMO hasOffscreenRect should also take into account scrolling and the direction in which we are scrolling.

i.e. if we scroll the frame, due to not finding any element, and then an element becomes visible, that element should be focused, even though it was not visible before we scrolled.
Comment 4 Yael 2010-11-15 13:12:04 PST
hasOffscreenRect() is using absoluteClippedOverflowRect() to get the node's rect.
If the node is hidden inside a parent that is scrollable div, absoluteClippedOverflowRect() will return (0,0) for the size of the rect, so I think this function is already doing the right thing.
Comment 5 Antonio Gomes 2011-05-11 09:38:03 PDT
it has been fixed by Yael