Title: [128625] trunk/Source/WebKit/blackberry
Revision
128625
Author
[email protected]
Date
2012-09-14 10:09:34 -0700 (Fri, 14 Sep 2012)

Log Message

Always send mouse events on pages that don't scroll even if there
is no mouse move listener attatched.
PR #208228
https://bugs.webkit.org/show_bug.cgi?id=96800

Patch by Genevieve Mak <[email protected]> on 2012-09-14
Reviewed by Antonio Gomes.

Reviewed Internally By Antonio Gomes.

* WebKitSupport/TouchEventHandler.cpp:
(BlackBerry::WebKit::TouchEventHandler::handleTouchPoint):

Modified Paths

Diff

Modified: trunk/Source/WebKit/blackberry/ChangeLog (128624 => 128625)


--- trunk/Source/WebKit/blackberry/ChangeLog	2012-09-14 17:05:32 UTC (rev 128624)
+++ trunk/Source/WebKit/blackberry/ChangeLog	2012-09-14 17:09:34 UTC (rev 128625)
@@ -1,3 +1,17 @@
+2012-09-14  Genevieve Mak  <[email protected]>
+
+        Always send mouse events on pages that don't scroll even if there
+        is no mouse move listener attatched.
+        PR #208228
+        https://bugs.webkit.org/show_bug.cgi?id=96800
+
+        Reviewed by Antonio Gomes.
+
+        Reviewed Internally By Antonio Gomes.
+
+        * WebKitSupport/TouchEventHandler.cpp:
+        (BlackBerry::WebKit::TouchEventHandler::handleTouchPoint):
+
 2012-09-14  Mike Fenton  <[email protected]>
 
         [BlackBerry] Update the minimum zoom scale when focusing an input field.

Modified: trunk/Source/WebKit/blackberry/WebKitSupport/TouchEventHandler.cpp (128624 => 128625)


--- trunk/Source/WebKit/blackberry/WebKitSupport/TouchEventHandler.cpp	2012-09-14 17:05:32 UTC (rev 128624)
+++ trunk/Source/WebKit/blackberry/WebKitSupport/TouchEventHandler.cpp	2012-09-14 17:09:34 UTC (rev 128625)
@@ -187,6 +187,7 @@
     // Enable input mode on any touch event.
     m_webPage->m_inputHandler->setInputModeEnabled();
     bool pureWithMouseConversion = m_webPage->m_touchEventMode == PureTouchEventsWithMouseConversion;
+    bool alwaysEnableMouseConversion = pureWithMouseConversion || (!isMainFrameScrollable(m_webPage) && !m_webPage->m_inRegionScroller->d->isActive());
 
     switch (point.m_state) {
     case Platform::TouchPoint::TouchPressed:
@@ -208,7 +209,7 @@
 
             // Set or reset the touch mode.
             Element* possibleTargetNodeForMouseMoveEvents = static_cast<Element*>(m_lastFatFingersResult.positionWasAdjusted() ? elementUnderFatFinger : m_lastFatFingersResult.node());
-            m_convertTouchToMouse = pureWithMouseConversion ? true : shouldConvertTouchToMouse(possibleTargetNodeForMouseMoveEvents);
+            m_convertTouchToMouse = alwaysEnableMouseConversion ? true : shouldConvertTouchToMouse(possibleTargetNodeForMouseMoveEvents);
 
             if (!possibleTargetNodeForMouseMoveEvents || (!possibleTargetNodeForMouseMoveEvents->hasEventListeners(eventNames().touchmoveEvent) && !m_convertTouchToMouse))
                 m_webPage->client()->notifyNoMouseMoveOrTouchMoveHandlers();
@@ -274,9 +275,7 @@
             PlatformMouseEvent mouseEvent(point.m_pos, m_lastScreenPoint, PlatformEvent::MouseMoved, 1, LeftButton, TouchScreen);
             m_lastScreenPoint = point.m_screenPos;
             if (!m_webPage->handleMouseEvent(mouseEvent)) {
-                // If the page is scrollable and the first event is not handled, ignore subsequent mouse moves.
-                if (isMainFrameScrollable(m_webPage) || m_webPage->m_inRegionScroller->d->isActive() )
-                    m_convertTouchToMouse = pureWithMouseConversion;
+                m_convertTouchToMouse = alwaysEnableMouseConversion;
                 return false;
             }
             return true;
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to