Title: [106572] trunk/Source
Revision
106572
Author
[email protected]
Date
2012-02-02 11:03:29 -0800 (Thu, 02 Feb 2012)

Log Message

NPAPI will not send mouse up events when mouse is outside plugin area
https://bugs.webkit.org/show_bug.cgi?id=77657
<rdar://problem/10160674>

Reviewed by Andreas Kling.

Source/WebCore:

Export EventHandler::setCapturingMouseEventsNode.

* WebCore.exp.in:

Source/WebKit2:

Use EventHandler::setCapturingMouseEventsNode to ensure we get all the mouse events when the mouse is down.

* WebProcess/Plugins/PluginView.cpp:
(WebKit::PluginView::handleEvent):

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (106571 => 106572)


--- trunk/Source/WebCore/ChangeLog	2012-02-02 18:59:09 UTC (rev 106571)
+++ trunk/Source/WebCore/ChangeLog	2012-02-02 19:03:29 UTC (rev 106572)
@@ -1,3 +1,15 @@
+2012-02-02  Anders Carlsson  <[email protected]>
+
+        NPAPI will not send mouse up events when mouse is outside plugin area
+        https://bugs.webkit.org/show_bug.cgi?id=77657
+        <rdar://problem/10160674>
+
+        Reviewed by Andreas Kling.
+
+        Export EventHandler::setCapturingMouseEventsNode.
+
+        * WebCore.exp.in:
+
 2012-02-02  Antti Koivisto  <[email protected]>
 
         Move remaining implementation from CSSStyleDeclaration to subclasses 

Modified: trunk/Source/WebCore/WebCore.exp.in (106571 => 106572)


--- trunk/Source/WebCore/WebCore.exp.in	2012-02-02 18:59:09 UTC (rev 106571)
+++ trunk/Source/WebCore/WebCore.exp.in	2012-02-02 19:03:29 UTC (rev 106572)
@@ -236,6 +236,7 @@
 __ZN7WebCore12EventHandler21handleMousePressEventERKNS_18PlatformMouseEventE
 __ZN7WebCore12EventHandler23handleMouseReleaseEventERKNS_18PlatformMouseEventE
 __ZN7WebCore12EventHandler24logicalScrollRecursivelyENS_22ScrollLogicalDirectionENS_17ScrollGranularityEPNS_4NodeE
+__ZN7WebCore12EventHandler27setCapturingMouseEventsNodeEN3WTF10PassRefPtrINS_4NodeEEE
 __ZN7WebCore12EventHandler31passMouseMovedEventToScrollbarsEP7NSEvent
 __ZN7WebCore12EventHandler31passMouseMovedEventToScrollbarsERKNS_18PlatformMouseEventE
 __ZN7WebCore12EventHandler7mouseUpEP7NSEvent

Modified: trunk/Source/WebKit2/ChangeLog (106571 => 106572)


--- trunk/Source/WebKit2/ChangeLog	2012-02-02 18:59:09 UTC (rev 106571)
+++ trunk/Source/WebKit2/ChangeLog	2012-02-02 19:03:29 UTC (rev 106572)
@@ -1,3 +1,16 @@
+2012-02-02  Anders Carlsson  <[email protected]>
+
+        NPAPI will not send mouse up events when mouse is outside plugin area
+        https://bugs.webkit.org/show_bug.cgi?id=77657
+        <rdar://problem/10160674>
+
+        Reviewed by Andreas Kling.
+
+        Use EventHandler::setCapturingMouseEventsNode to ensure we get all the mouse events when the mouse is down.
+
+        * WebProcess/Plugins/PluginView.cpp:
+        (WebKit::PluginView::handleEvent):
+
 2012-02-02  Claudio Saavedra  <[email protected]> and Martin Robinson  <[email protected]>
 
         [GTK] WebKitWebView won't work in a GtkOffscreenWindow

Modified: trunk/Source/WebKit2/WebProcess/Plugins/PluginView.cpp (106571 => 106572)


--- trunk/Source/WebKit2/WebProcess/Plugins/PluginView.cpp	2012-02-02 18:59:09 UTC (rev 106571)
+++ trunk/Source/WebKit2/WebProcess/Plugins/PluginView.cpp	2012-02-02 19:03:29 UTC (rev 106572)
@@ -631,8 +631,11 @@
         // We have a mouse event.
 
         // FIXME: Clicking in a scroll bar should not change focus.
-        if (currentEvent->type() == WebEvent::MouseDown)
+        if (currentEvent->type() == WebEvent::MouseDown) {
             focusPluginElement();
+            frame()->eventHandler()->setCapturingMouseEventsNode(m_pluginElement.get());
+        } else if (currentEvent->type() == WebEvent::MouseUp)
+            frame()->eventHandler()->setCapturingMouseEventsNode(0);
 
         didHandleEvent = m_plugin->handleMouseEvent(static_cast<const WebMouseEvent&>(*currentEvent));
     } else if (event->type() == eventNames().mousewheelEvent && currentEvent->type() == WebEvent::Wheel) {
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes

Reply via email to