Title: [172563] branches/safari-600.1-branch/Source/WebKit2
Revision
172563
Author
lforsch...@apple.com
Date
2014-08-13 21:01:35 -0700 (Wed, 13 Aug 2014)

Log Message

Merged r172512.  <rdar://problem/17982275>

Modified Paths

Diff

Modified: branches/safari-600.1-branch/Source/WebKit2/ChangeLog (172562 => 172563)


--- branches/safari-600.1-branch/Source/WebKit2/ChangeLog	2014-08-14 03:59:44 UTC (rev 172562)
+++ branches/safari-600.1-branch/Source/WebKit2/ChangeLog	2014-08-14 04:01:35 UTC (rev 172563)
@@ -1,5 +1,22 @@
 2014-08-13  Lucas Forschler  <lforsch...@apple.com>
 
+        Merge r172512
+
+    2014-08-12  Tim Horton  <timothy_hor...@apple.com>
+
+            Document-relative page overlays drop some mouse events with non-zero top content inset
+            https://bugs.webkit.org/show_bug.cgi?id=135871
+            <rdar://problem/17982275>
+
+            Reviewed by Beth Dakin.
+
+            * WebProcess/WebPage/PageOverlay.cpp:
+            (WebKit::PageOverlay::mouseEvent):
+            Convert the mouse position into document-relative coordinates; the bounds()
+            already are! This way, we can actually compare them without being wrong sometimes.
+
+2014-08-13  Lucas Forschler  <lforsch...@apple.com>
+
         Merge r172501
 
     2014-08-12  Tim Horton  <timothy_hor...@apple.com>

Modified: branches/safari-600.1-branch/Source/WebKit2/WebProcess/WebPage/PageOverlay.cpp (172562 => 172563)


--- branches/safari-600.1-branch/Source/WebKit2/WebProcess/WebPage/PageOverlay.cpp	2014-08-14 03:59:44 UTC (rev 172562)
+++ branches/safari-600.1-branch/Source/WebKit2/WebProcess/WebPage/PageOverlay.cpp	2014-08-14 04:01:35 UTC (rev 172563)
@@ -158,8 +158,13 @@
     
 bool PageOverlay::mouseEvent(const WebMouseEvent& mouseEvent)
 {
+    IntPoint mousePositionInOverlayCoordinates(mouseEvent.position());
+
+    if (m_overlayType == PageOverlay::OverlayType::Document)
+        mousePositionInOverlayCoordinates = m_webPage->corePage()->mainFrame().view()->rootViewToContents(mousePositionInOverlayCoordinates);
+
     // Ignore events outside the bounds.
-    if (!bounds().contains(mouseEvent.position()))
+    if (!bounds().contains(mousePositionInOverlayCoordinates))
         return false;
 
     return m_client->mouseEvent(this, mouseEvent);
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to