Title: [102408] trunk
Revision
102408
Author
[email protected]
Date
2011-12-08 17:46:49 -0800 (Thu, 08 Dec 2011)

Log Message

keyboard event doesn't fire while moving mouse with button pressed
https://bugs.webkit.org/show_bug.cgi?id=73821

Patch by Rakesh KN <[email protected]> on 2011-12-08
Reviewed by Alexey Proskuryakov.

Autoscroll should not stop on key press.

Source/WebCore:

Test: fast/events/autoscroll-should-not-stop-on-keypress.html

* page/EventHandler.cpp:
(WebCore::EventHandler::keyEvent):
Removed the check for autoscroll so that autoscroll is not stopped on
key press and key event is processed.

LayoutTests:

* fast/events/autoscroll-should-not-stop-on-keypress-expected.txt: Added.
* fast/events/autoscroll-should-not-stop-on-keypress.html: Added.

Modified Paths

Added Paths

Diff

Modified: trunk/LayoutTests/ChangeLog (102407 => 102408)


--- trunk/LayoutTests/ChangeLog	2011-12-09 01:46:30 UTC (rev 102407)
+++ trunk/LayoutTests/ChangeLog	2011-12-09 01:46:49 UTC (rev 102408)
@@ -1,3 +1,15 @@
+2011-12-08  Rakesh KN  <[email protected]>
+
+        keyboard event doesn't fire while moving mouse with button pressed
+        https://bugs.webkit.org/show_bug.cgi?id=73821
+
+        Reviewed by Alexey Proskuryakov.
+
+        Autoscroll should not stop on key press.
+
+        * fast/events/autoscroll-should-not-stop-on-keypress-expected.txt: Added.
+        * fast/events/autoscroll-should-not-stop-on-keypress.html: Added.
+
 2011-12-08  James Robinson  <[email protected]>
 
         Add some tests for removing frames from the document while servicing requestAnimationFrame callbacks

Added: trunk/LayoutTests/fast/events/autoscroll-should-not-stop-on-keypress-expected.txt (0 => 102408)


--- trunk/LayoutTests/fast/events/autoscroll-should-not-stop-on-keypress-expected.txt	                        (rev 0)
+++ trunk/LayoutTests/fast/events/autoscroll-should-not-stop-on-keypress-expected.txt	2011-12-09 01:46:49 UTC (rev 102408)
@@ -0,0 +1,167 @@
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+Lots of text
+PASS document.body.scrollTop + window.innerHeight is document.body.scrollHeight
+PASS successfullyParsed is true
+
+TEST COMPLETE
+

Added: trunk/LayoutTests/fast/events/autoscroll-should-not-stop-on-keypress.html (0 => 102408)


--- trunk/LayoutTests/fast/events/autoscroll-should-not-stop-on-keypress.html	                        (rev 0)
+++ trunk/LayoutTests/fast/events/autoscroll-should-not-stop-on-keypress.html	2011-12-09 01:46:49 UTC (rev 102408)
@@ -0,0 +1,116 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8">
+<script src=""
+<script>
+window.jsTestIsAsync = true;
+
+function test() {
+    if (window.eventSender) {
+        var height = document.body.scrollHeight + 100;
+        eventSender.dragMode = false;
+        eventSender.mouseMoveTo(20, 100);
+        eventSender.mouseDown();
+        eventSender.mouseMoveTo(20, height);
+        setTimeout(testAutoScroll, 200);
+        eventSender.keyDown('a');
+    } else {
+        debug("Test manually that scrolling does not stop if we press a key while autoscroll is happening.");
+    }
+}
+
+function testAutoScroll() {
+    shouldBe('document.body.scrollTop + window.innerHeight', 'document.body.scrollHeight');
+    finishJSTest();
+}
+
+successfullyParsed = true;
+</script>
+</head>
+<body _onload_="test()">
+Lots of text</br>Lots of text</br>
+Lots of text</br>Lots of text</br>
+Lots of text</br>Lots of text</br>
+Lots of text</br>Lots of text</br>
+Lots of text</br>Lots of text</br>
+Lots of text</br>Lots of text</br>
+Lots of text</br>Lots of text</br>
+Lots of text</br>Lots of text</br>
+Lots of text</br>Lots of text</br>
+Lots of text</br>Lots of text</br>
+Lots of text</br>Lots of text</br>
+Lots of text</br>Lots of text</br>
+Lots of text</br>Lots of text</br>
+Lots of text</br>Lots of text</br>
+Lots of text</br>Lots of text</br>
+Lots of text</br>Lots of text</br>
+Lots of text</br>Lots of text</br>
+Lots of text</br>Lots of text</br>
+Lots of text</br>Lots of text</br>
+Lots of text</br>Lots of text</br>
+Lots of text</br>Lots of text</br>
+Lots of text</br>Lots of text</br>
+Lots of text</br>Lots of text</br>
+Lots of text</br>Lots of text</br>
+Lots of text</br>Lots of text</br>
+Lots of text</br>Lots of text</br>
+Lots of text</br>Lots of text</br>
+Lots of text</br>Lots of text</br>
+Lots of text</br>Lots of text</br>
+Lots of text</br>Lots of text</br>
+Lots of text</br>Lots of text</br>
+Lots of text</br>Lots of text</br>
+Lots of text</br>Lots of text</br>
+Lots of text</br>Lots of text</br>
+Lots of text</br>Lots of text</br>
+Lots of text</br>Lots of text</br>
+Lots of text</br>Lots of text</br>
+Lots of text</br>Lots of text</br>
+Lots of text</br>Lots of text</br>
+Lots of text</br>Lots of text</br>
+Lots of text</br>Lots of text</br>
+Lots of text</br>Lots of text</br>
+Lots of text</br>Lots of text</br>
+Lots of text</br>Lots of text</br>
+Lots of text</br>Lots of text</br>
+Lots of text</br>Lots of text</br>
+Lots of text</br>Lots of text</br>
+Lots of text</br>Lots of text</br>
+Lots of text</br>Lots of text</br>
+Lots of text</br>Lots of text</br>
+Lots of text</br>Lots of text</br>
+Lots of text</br>Lots of text</br>
+Lots of text</br>Lots of text</br>
+Lots of text</br>Lots of text</br>
+Lots of text</br>Lots of text</br>
+Lots of text</br>Lots of text</br>
+Lots of text</br>Lots of text</br>
+Lots of text</br>Lots of text</br>
+Lots of text</br>Lots of text</br>
+Lots of text</br>Lots of text</br>
+Lots of text</br>Lots of text</br>
+Lots of text</br>Lots of text</br>
+Lots of text</br>Lots of text</br>
+Lots of text</br>Lots of text</br>
+Lots of text</br>Lots of text</br>
+Lots of text</br>Lots of text</br>
+Lots of text</br>Lots of text</br>
+Lots of text</br>Lots of text</br>
+Lots of text</br>Lots of text</br>
+Lots of text</br>Lots of text</br>
+Lots of text</br>Lots of text</br>
+Lots of text</br>Lots of text</br>
+Lots of text</br>Lots of text</br>
+Lots of text</br>Lots of text</br>
+Lots of text</br>Lots of text</br>
+Lots of text</br>Lots of text</br>
+Lots of text</br>Lots of text</br>
+Lots of text</br>Lots of text</br>
+Lots of text</br>Lots of text</br>
+Lots of text</br>Lots of text</br>
+Lots of text</br>Lots of text</br>
+<div id="console"></div>
+<script src=""
+</body>
+</html>

Modified: trunk/Source/WebCore/ChangeLog (102407 => 102408)


--- trunk/Source/WebCore/ChangeLog	2011-12-09 01:46:30 UTC (rev 102407)
+++ trunk/Source/WebCore/ChangeLog	2011-12-09 01:46:49 UTC (rev 102408)
@@ -1,3 +1,19 @@
+2011-12-08  Rakesh KN  <[email protected]>
+
+        keyboard event doesn't fire while moving mouse with button pressed
+        https://bugs.webkit.org/show_bug.cgi?id=73821
+
+        Reviewed by Alexey Proskuryakov.
+
+        Autoscroll should not stop on key press.
+
+        Test: fast/events/autoscroll-should-not-stop-on-keypress.html
+
+        * page/EventHandler.cpp:
+        (WebCore::EventHandler::keyEvent):
+        Removed the check for autoscroll so that autoscroll is not stopped on
+        key press and key event is processed. 
+
 2011-12-08  Anders Carlsson  <[email protected]>
 
         Add scrollAnimator getter method to WebScrollbarPainterDelegate

Modified: trunk/Source/WebCore/page/EventHandler.cpp (102407 => 102408)


--- trunk/Source/WebCore/page/EventHandler.cpp	2011-12-09 01:46:30 UTC (rev 102407)
+++ trunk/Source/WebCore/page/EventHandler.cpp	2011-12-09 01:46:49 UTC (rev 102408)
@@ -2515,12 +2515,12 @@
 
 #if ENABLE(PAN_SCROLLING)
     if (Page* page = m_frame->page()) {
-        if (page->mainFrame()->eventHandler()->m_panScrollInProgress || m_autoscrollInProgress) {
-            // If a key is pressed while the autoscroll/panScroll is in progress then we want to stop
+        if (page->mainFrame()->eventHandler()->m_panScrollInProgress) {
+            // If a key is pressed while the panScroll is in progress then we want to stop
             if (initialKeyEvent.type() == PlatformKeyboardEvent::KeyDown || initialKeyEvent.type() == PlatformKeyboardEvent::RawKeyDown) 
                 stopAutoscrollTimer();
 
-            // If we were in autoscroll/panscroll mode, we swallow the key event
+            // If we were in panscroll mode, we swallow the key event
             return true;
         }
     }
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes

Reply via email to