Fix rubber-band effect on non-scrollable pages
authorcommit-queue@webkit.org <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 1 Feb 2013 01:32:10 +0000 (01:32 +0000)
committercommit-queue@webkit.org <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 1 Feb 2013 01:32:10 +0000 (01:32 +0000)
commitcc3487850b1e472343726a477dc71e3be0fd9d54
treecf1fdeb70e32618cd98232a27f9faf9a329929a5
parentc62ab8a1edfa9ffbba8d8b3d3b858c3853683837
Fix rubber-band effect on non-scrollable pages
https://bugs.webkit.org/show_bug.cgi?id=107611

Source/WebCore:

Patch by Christopher Cameron <ccameron@chromium.org> on 2013-01-31
Reviewed by Antonio Gomes.

Handle a FrameView's wheel event even if it is not scrollable
because Chrome relies on handling these wheel events for the
over-scroll rubber-band effect.

This had been removed in r138378
[EFL][WK2] Never create WebCore scrollbars for EFL/WK2
by kenneth@chromium.org

Tests: platform/chromium/rubberbanding/wheelevent-overhang-e.html
       platform/chromium/rubberbanding/wheelevent-overhang-n.html
       platform/chromium/rubberbanding/wheelevent-overhang-s.html
       platform/chromium/rubberbanding/wheelevent-overhang-w.html

* page/FrameView.cpp:
(WebCore::FrameView::wheelEvent):

Tools:

Add mouseWheelBegin function to EventSender to allow
event-based rubber-banding tests.

Patch by Christopher Cameron <ccameron@chromium.org> on 2013-01-31
Reviewed by Antonio Gomes.

* DumpRenderTree/chromium/TestRunner/src/EventSender.cpp:
(WebTestRunner):
(WebTestRunner::EventSender::EventSender):
(WebTestRunner::EventSender::mouseDragBegin):
* DumpRenderTree/chromium/TestRunner/src/EventSender.h:
(EventSender):

LayoutTests:

Patch by Christopher Cameron <ccameron@chromium.org> on 2013-01-31
Reviewed by Antonio Gomes.

* platform/chromium/rubberbanding/event-overhang-e-expected.png: Added.
* platform/chromium/rubberbanding/event-overhang-e-expected.txt: Added.
* platform/chromium/rubberbanding/event-overhang-e.html: Added.
* platform/chromium/rubberbanding/event-overhang-n-expected.png: Added.
* platform/chromium/rubberbanding/event-overhang-n-expected.txt: Added.
* platform/chromium/rubberbanding/event-overhang-n.html: Added.
* platform/chromium/rubberbanding/event-overhang-s-expected.png: Added.
* platform/chromium/rubberbanding/event-overhang-s-expected.txt: Added.
* platform/chromium/rubberbanding/event-overhang-s.html: Added.
* platform/chromium/rubberbanding/event-overhang-w-expected.png: Added.
* platform/chromium/rubberbanding/event-overhang-w-expected.txt: Added.
* platform/chromium/rubberbanding/event-overhang-w.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@141514 268f45cc-cd09-0410-ab3c-d52691b4dbfc
18 files changed:
LayoutTests/ChangeLog
LayoutTests/platform/chromium/rubberbanding/event-overhang-e-expected.png [new file with mode: 0644]
LayoutTests/platform/chromium/rubberbanding/event-overhang-e-expected.txt [new file with mode: 0644]
LayoutTests/platform/chromium/rubberbanding/event-overhang-e.html [new file with mode: 0644]
LayoutTests/platform/chromium/rubberbanding/event-overhang-n-expected.png [new file with mode: 0644]
LayoutTests/platform/chromium/rubberbanding/event-overhang-n-expected.txt [new file with mode: 0644]
LayoutTests/platform/chromium/rubberbanding/event-overhang-n.html [new file with mode: 0644]
LayoutTests/platform/chromium/rubberbanding/event-overhang-s-expected.png [new file with mode: 0644]
LayoutTests/platform/chromium/rubberbanding/event-overhang-s-expected.txt [new file with mode: 0644]
LayoutTests/platform/chromium/rubberbanding/event-overhang-s.html [new file with mode: 0644]
LayoutTests/platform/chromium/rubberbanding/event-overhang-w-expected.png [new file with mode: 0644]
LayoutTests/platform/chromium/rubberbanding/event-overhang-w-expected.txt [new file with mode: 0644]
LayoutTests/platform/chromium/rubberbanding/event-overhang-w.html [new file with mode: 0644]
Source/WebCore/ChangeLog
Source/WebCore/page/FrameView.cpp
Tools/ChangeLog
Tools/DumpRenderTree/chromium/TestRunner/src/EventSender.cpp
Tools/DumpRenderTree/chromium/TestRunner/src/EventSender.h