[Webkit-unassigned] [Bug 119468] [Spatial Navigation] : should prefer focusable elements with absolute positioning over other elements if both elements visible area completely intersects each other.
bugzilla-daemon at webkit.org
bugzilla-daemon at webkit.org
Thu Sep 26 06:24:51 PDT 2013
https://bugs.webkit.org/show_bug.cgi?id=119468
Abhijeet Kandalkar <kandalkar.abhijeet58 at gmail.com> changed:
What |Removed |Added
----------------------------------------------------------------------------
Attachment #208088|0 |1
is obsolete| |
Attachment #212699| |review?, commit-queue?
Flag| |
--- Comment #10 from Abhijeet Kandalkar <kandalkar.abhijeet58 at gmail.com> 2013-09-26 06:23:48 PST ---
Created an attachment (id=212699)
--> (https://bugs.webkit.org/attachment.cgi?id=212699&action=review)
Updated patch-3
> > Source/WebCore/page/FocusController.cpp:737
> > + if (candidate.rect.contains(closest.rect) || closest.rect.contains(candidate.rect)) {
>
> could you explain this new 'if'?
To check whether candidate and closest completely intersect each other.
> > Source/WebCore/page/SpatialNavigation.cpp:275
> > + return pariallyIntersects ? (targetRect.x() < curRect.x()): (targetRect.maxX() <= curRect.x());
>
> could you explain these new conditions?
/* Determine if curRect and targetRect overlap each other */
bool overlap = (curRect.intersects(targetRect) && !curRect.contains(targetRect) && !targetRect.contains(curRect));
/* Previously node is considered as best candidate only if its bounding rect is exactly below/up/left/right with respect to current node and that’s why overlapping nodes were neglected. Current logic checks for overlap and returns proper candidate node .*/
return overlap ? (targetRect.x() < curRect.x()): (targetRect.maxX() <= curRect.x()
--
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
More information about the webkit-unassigned
mailing list