Title: [147181] trunk/Source/WebKit/chromium
Revision
147181
Author
ael...@chromium.org
Date
2013-03-28 16:40:28 -0700 (Thu, 28 Mar 2013)

Log Message

[chromium] Use widget.parent() for plugin WebMouseEvents
https://bugs.webkit.org/show_bug.cgi?id=113543

Reviewed by James Robinson.

In r142571 I switches widget.parent() to widget.root() in the plugin
WebCore event -> WebMouseEvent creator, to make the converter the
inverse of the one going the other way and avoid null pointer crashes.
But the plugin code expects it to be parent() (see
http://crbug.com/223335).

* src/WebInputEventConversion.cpp:
(WebKit::updateWebMouseEventFromWebCoreMouseEvent):

Modified Paths

Diff

Modified: trunk/Source/WebKit/chromium/ChangeLog (147180 => 147181)


--- trunk/Source/WebKit/chromium/ChangeLog	2013-03-28 23:12:50 UTC (rev 147180)
+++ trunk/Source/WebKit/chromium/ChangeLog	2013-03-28 23:40:28 UTC (rev 147181)
@@ -1,3 +1,19 @@
+2013-03-28  Alexandre Elias  <ael...@chromium.org>
+
+        [chromium] Use widget.parent() for plugin WebMouseEvents
+        https://bugs.webkit.org/show_bug.cgi?id=113543
+
+        Reviewed by James Robinson.
+
+        In r142571 I switches widget.parent() to widget.root() in the plugin
+        WebCore event -> WebMouseEvent creator, to make the converter the
+        inverse of the one going the other way and avoid null pointer crashes.
+        But the plugin code expects it to be parent() (see
+        http://crbug.com/223335).
+
+        * src/WebInputEventConversion.cpp:
+        (WebKit::updateWebMouseEventFromWebCoreMouseEvent):
+
 2013-03-28  Xianzhu Wang  <wangxian...@chromium.org>
 
         [Chromium] Don't create SolidColorLayer for full transparent background

Modified: trunk/Source/WebKit/chromium/src/WebInputEventConversion.cpp (147180 => 147181)


--- trunk/Source/WebKit/chromium/src/WebInputEventConversion.cpp	2013-03-28 23:12:50 UTC (rev 147180)
+++ trunk/Source/WebKit/chromium/src/WebInputEventConversion.cpp	2013-03-28 23:40:28 UTC (rev 147181)
@@ -437,8 +437,10 @@
     webEvent.timeStampSeconds = event.timeStamp() / millisPerSecond;
     webEvent.modifiers = getWebInputModifiers(event);
 
-    ScrollView* view = widget.root();
-    IntPoint windowPoint = view->contentsToWindow(IntPoint(event.absoluteLocation().x(), event.absoluteLocation().y()));
+    ScrollView* view = widget.parent();
+    IntPoint windowPoint = IntPoint(event.absoluteLocation().x(), event.absoluteLocation().y());
+    if (view)
+        windowPoint = view->contentsToWindow(windowPoint);
     webEvent.globalX = event.screenX();
     webEvent.globalY = event.screenY();
     webEvent.windowX = windowPoint.x();
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to