⚠ Archived content — this site is no longer maintained.   Current WebKit documentation is at docs.webkit.org.

Changeset 98782 in webkit


Ignore:
Timestamp:
Oct 28, 2011, 4:44:30 PM (15 years ago)
Author:
commit-queue@webkit.org
Message:

Add support for sending scroll-update events from EventSender.
https://bugs.webkit.org/show_bug.cgi?id=66272

Patch by Sadrul Habib Chowdhury <sadrul@chromium.org> on 2011-10-28
Reviewed by Adam Barth.

Source/WebKit/chromium:

  • public/WebInputEvent.h:

(WebKit::WebGestureEvent::WebGestureEvent):

  • src/WebInputEventConversion.cpp:

(WebKit::PlatformGestureEventBuilder::PlatformGestureEventBuilder):

  • src/WebPopupMenuImpl.cpp:

(WebKit::WebPopupMenuImpl::handleInputEvent):

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::handleInputEvent):

Tools:

  • DumpRenderTree/chromium/EventSender.cpp:

(EventSender::EventSender):
(EventSender::reset):
(EventSender::gestureScrollUpdate):
(EventSender::gestureEvent):

  • DumpRenderTree/chromium/EventSender.h:

LayoutTests:

  • fast/events/touch/gesture/gesture-scroll-expected.txt: Added.
  • fast/events/touch/gesture/gesture-scroll.html: Added.
  • platform/chromium/fast/events/touch/gesture/gesture-scroll-expected.txt: Added.
  • platform/qt/Skipped:
Location:
trunk
Files:
3 added
10 edited

Legend:

Unmodified
Added
Removed
  • trunk/LayoutTests/ChangeLog

    r98776 r98782  
     12011-10-28 Sadrul Habib Chowdhury  <sadrul@chromium.org>
     2
     3        Add support for sending scroll-update events from EventSender.
     4        https://bugs.webkit.org/show_bug.cgi?id=66272
     5
     6        Reviewed by Adam Barth.
     7
     8        * fast/events/touch/gesture/gesture-scroll-expected.txt: Added.
     9        * fast/events/touch/gesture/gesture-scroll.html: Added.
     10        * platform/chromium/fast/events/touch/gesture/gesture-scroll-expected.txt: Added.
     11        * platform/qt/Skipped:
     12
    1132011-10-28  Simon Fraser  <simon.fraser@apple.com>
    214
  • trunk/LayoutTests/platform/qt/Skipped

    r98737 r98782  
    22232223# https://bugs.webkit.org/show_bug.cgi?id=66173
    22242224fast/events/touch/gesture/gesture-click.html
     2225# New tests introduced in https://bugs.webkit.org/show_bug.cgi?id=66272. Needs
     2226# Qt implementation.
     2227fast/events/touch/gesture/gesture-scroll.html
    22252228
    22262229# new test introduced in r88958, but fail on Qt
  • trunk/Source/WebKit/chromium/ChangeLog

    r98778 r98782  
     12011-10-28  Sadrul Habib Chowdhury  <sadrul@chromium.org>
     2 
     3        Add support for sending scroll-update events from EventSender.
     4        https://bugs.webkit.org/show_bug.cgi?id=66272
     5
     6        Reviewed by Adam Barth.
     7
     8        * public/WebInputEvent.h:
     9        (WebKit::WebGestureEvent::WebGestureEvent):
     10        * src/WebInputEventConversion.cpp:
     11        (WebKit::PlatformGestureEventBuilder::PlatformGestureEventBuilder):
     12        * src/WebPopupMenuImpl.cpp:
     13        (WebKit::WebPopupMenuImpl::handleInputEvent):
     14        * src/WebViewImpl.cpp:
     15        (WebKit::WebViewImpl::handleInputEvent):
     16
    1172011-10-28  James Robinson  <jamesr@chromium.org>
    218
  • trunk/Source/WebKit/chromium/public/WebInputEvent.h

    r95901 r98782  
    104104        GestureScrollBegin,
    105105        GestureScrollEnd,
     106        GestureScrollUpdate,
    106107        GestureTap,
    107108
     
    335336    int globalX;
    336337    int globalY;
     338    float deltaX;
     339    float deltaY;
    337340
    338341    WebGestureEvent(unsigned sizeParam = sizeof(WebGestureEvent))
     
    341344        , globalX(0)
    342345        , globalY(0)
     346        , deltaX(0.0f)
     347        , deltaY(0.0f)
    343348    {
    344349    }
  • trunk/Source/WebKit/chromium/src/WebInputEventConversion.cpp

    r96633 r98782  
    125125        m_type = PlatformGestureEvent::ScrollEndType;
    126126        break;
     127    case WebInputEvent::GestureScrollUpdate:
     128        m_type = PlatformGestureEvent::ScrollUpdateType;
     129        break;
    127130    case WebInputEvent::GestureTap:
    128131        m_type = PlatformGestureEvent::TapType;
     
    133136    m_position = widget->convertFromContainingWindow(IntPoint(e.x, e.y));
    134137    m_globalPosition = IntPoint(e.globalX, e.globalY);
     138    m_deltaX = e.deltaX;
     139    m_deltaY = e.deltaY;
    135140    m_timestamp = e.timeStampSeconds;
    136141    m_shiftKey = (e.modifiers & WebInputEvent::ShiftKey);
  • trunk/Source/WebKit/chromium/src/WebPopupMenuImpl.cpp

    r98669 r98782  
    275275    case WebInputEvent::GestureScrollBegin:
    276276    case WebInputEvent::GestureScrollEnd:
     277    case WebInputEvent::GestureScrollUpdate:
    277278    case WebInputEvent::GestureTap:
    278279        return GestureEvent(*static_cast<const WebGestureEvent*>(&inputEvent));
  • trunk/Source/WebKit/chromium/src/WebViewImpl.cpp

    r98778 r98782  
    12821282    case WebInputEvent::GestureScrollBegin:
    12831283    case WebInputEvent::GestureScrollEnd:
     1284    case WebInputEvent::GestureScrollUpdate:
    12841285    case WebInputEvent::GestureTap:
    12851286        handled = gestureEvent(*static_cast<const WebGestureEvent*>(&inputEvent));
  • trunk/Tools/ChangeLog

    r98780 r98782  
     12011-10-28  Sadrul Habib Chowdhury  <sadrul@chromium.org>
     2
     3        Add support for sending scroll-update events from EventSender.
     4        https://bugs.webkit.org/show_bug.cgi?id=66272
     5
     6        Reviewed by Adam Barth.
     7
     8        * DumpRenderTree/chromium/EventSender.cpp:
     9        (EventSender::EventSender):
     10        (EventSender::reset):
     11        (EventSender::gestureScrollUpdate):
     12        (EventSender::gestureEvent):
     13        * DumpRenderTree/chromium/EventSender.h:
     14
    1152011-10-28  Eric Seidel  <eric@webkit.org>
    216
  • trunk/Tools/DumpRenderTree/chromium/EventSender.cpp

    r94692 r98782  
    281281    bindMethod("gestureScrollBegin", &EventSender::gestureScrollBegin);
    282282    bindMethod("gestureScrollEnd", &EventSender::gestureScrollEnd);
     283    bindMethod("gestureScrollUpdate", &EventSender::gestureScrollUpdate);
    283284    bindMethod("gestureTap", &EventSender::gestureTap);
    284285    bindMethod("zoomPageIn", &EventSender::zoomPageIn);
     
    329330    touchPoints.clear();
    330331    m_taskList.revokeAll();
     332    m_gestureStartLocation = WebPoint(0, 0);
    331333}
    332334
     
    10381040}
    10391041
     1042void EventSender::gestureScrollUpdate(const CppArgumentList& arguments, CppVariant* result)
     1043{
     1044    result->setNull();
     1045    gestureEvent(WebInputEvent::GestureScrollUpdate, arguments);
     1046}
     1047
    10401048void EventSender::gestureTap(const CppArgumentList& arguments, CppVariant* result)
    10411049{
     
    10531061    WebGestureEvent event;
    10541062    event.type = type;
    1055     event.x = point.x;
    1056     event.y = point.y;
    1057     event.globalX = point.x;
    1058     event.globalY = point.y;
     1063
     1064    switch (type) {
     1065    case WebInputEvent::GestureScrollUpdate:
     1066        event.deltaX = static_cast<float>(arguments[0].toDouble());
     1067        event.deltaY = static_cast<float>(arguments[1].toDouble());
     1068        event.x = m_gestureStartLocation.x + event.deltaX;
     1069        event.y = m_gestureStartLocation.y + event.deltaY;
     1070        break;
     1071
     1072    case WebInputEvent::GestureScrollBegin:
     1073        m_gestureStartLocation = WebPoint(point.x, point.y);
     1074        // Fallthrough
     1075    case WebInputEvent::GestureScrollEnd:
     1076    case WebInputEvent::GestureTap:
     1077        event.x = point.x;
     1078        event.y = point.y;
     1079        break;
     1080    default:
     1081        ASSERT_NOT_REACHED();
     1082    }
     1083
     1084    event.globalX = event.x;
     1085    event.globalY = event.y;
    10591086    event.timeStampSeconds = getCurrentEventTimeSec();
    10601087    webview()->handleInputEvent(event);
  • trunk/Tools/DumpRenderTree/chromium/EventSender.h

    r94779 r98782  
    9999    void gestureScrollBegin(const CppArgumentList&, CppVariant*);
    100100    void gestureScrollEnd(const CppArgumentList&, CppVariant*);
     101    void gestureScrollUpdate(const CppArgumentList&, CppVariant*);
    101102    void gestureTap(const CppArgumentList&, CppVariant*);
    102103    void gestureEvent(WebKit::WebInputEvent::Type, const CppArgumentList&);
     
    160161    TestShell* m_shell;
    161162
     163    // Location of the touch point that initiated a gesture.
     164    WebKit::WebPoint m_gestureStartLocation;
     165
    162166    // Location of last mouseMoveTo event.
    163167    static WebKit::WebPoint lastMousePos;
Note: See TracChangeset for help on using the changeset viewer.