Title: [112084] trunk/Source/WebKit2
Revision
112084
Author
[email protected]
Date
2012-03-26 06:23:22 -0700 (Mon, 26 Mar 2012)

Log Message

[Qt] Taps are sometimes not highlighted.
https://bugs.webkit.org/show_bug.cgi?id=82188

Patch by Allan Sandfeld Jensen <[email protected]> on 2012-03-26
Reviewed by Kenneth Rohde Christiansen.

Highlight any focusable parent element, or if none is found at least
the element returned by bestClickableNodeForTouchPoint.

* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::highlightPotentialActivation):

Modified Paths

Diff

Modified: trunk/Source/WebKit2/ChangeLog (112083 => 112084)


--- trunk/Source/WebKit2/ChangeLog	2012-03-26 13:07:24 UTC (rev 112083)
+++ trunk/Source/WebKit2/ChangeLog	2012-03-26 13:23:22 UTC (rev 112084)
@@ -1,3 +1,16 @@
+2012-03-26  Allan Sandfeld Jensen  <[email protected]>
+
+        [Qt] Taps are sometimes not highlighted.
+        https://bugs.webkit.org/show_bug.cgi?id=82188
+
+        Reviewed by Kenneth Rohde Christiansen.
+
+        Highlight any focusable parent element, or if none is found at least
+        the element returned by bestClickableNodeForTouchPoint.
+
+        * WebProcess/WebPage/WebPage.cpp:
+        (WebKit::WebPage::highlightPotentialActivation):
+
 2012-03-26  Sheriff Bot  <[email protected]>
 
         Unreviewed, rolling out r111993.

Modified: trunk/Source/WebKit2/WebProcess/WebPage/WebPage.cpp (112083 => 112084)


--- trunk/Source/WebKit2/WebProcess/WebPage/WebPage.cpp	2012-03-26 13:07:24 UTC (rev 112083)
+++ trunk/Source/WebKit2/WebProcess/WebPage/WebPage.cpp	2012-03-26 13:23:22 UTC (rev 112084)
@@ -1461,8 +1461,14 @@
         HitTestResult result = mainframe->eventHandler()->hitTestResultAtPoint(mainframe->view()->windowToContents(point), /*allowShadowContent*/ false, /*ignoreClipping*/ true);
         activationNode = result.innerNode();
 #endif
-        if (activationNode && !activationNode->isFocusable())
-            activationNode = activationNode->enclosingLinkEventParentOrSelf();
+        if (activationNode && !activationNode->isFocusable()) {
+            for (Node* node = activationNode; node; node = node->parentOrHostNode()) {
+                if (node->isFocusable()) {
+                    activationNode = node;
+                    break;
+                }
+            }
+        }
     }
 
     if (activationNode)
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes

Reply via email to