diff options
-rw-r--r-- | content/browser/renderer_host/render_widget_host_view_win.cc | 19 | ||||
-rw-r--r-- | content/browser/renderer_host/web_input_event_aurax11.cc | 16 |
2 files changed, 35 insertions, 0 deletions
diff --git a/content/browser/renderer_host/render_widget_host_view_win.cc b/content/browser/renderer_host/render_widget_host_view_win.cc index 9b185b9..2b1ece3 100644 --- a/content/browser/renderer_host/render_widget_host_view_win.cc +++ b/content/browser/renderer_host/render_widget_host_view_win.cc @@ -390,18 +390,37 @@ WebKit::WebGestureEvent CreateWebGestureEvent(HWND hwnd, // Copy any event-type specific data. switch (gesture.type()) { case ui::ET_GESTURE_TAP: + gesture_event.data.tap.tapCount = gesture.details().tap_count(); + gesture_event.data.tap.width = + gesture.details().bounding_box().width(); + gesture_event.data.tap.height = + gesture.details().bounding_box().height(); + // TODO(rbyers): Stop setting old fields once webkit is updated. + // crbug.com/143237 gesture_event.deltaX = gesture.details().tap_count(); break; case ui::ET_GESTURE_SCROLL_UPDATE: + gesture_event.data.scrollUpdate.deltaX = gesture.details().scroll_x(); + gesture_event.data.scrollUpdate.deltaY = gesture.details().scroll_y(); gesture_event.deltaX = gesture.details().scroll_x(); gesture_event.deltaY = gesture.details().scroll_y(); break; case ui::ET_GESTURE_PINCH_UPDATE: + gesture_event.data.pinchUpdate.scale = gesture.details().scale(); gesture_event.deltaX = gesture.details().scale(); break; case ui::ET_SCROLL_FLING_START: + gesture_event.data.flingStart.velocityX = gesture.details().velocity_x(); + gesture_event.data.flingStart.velocityY = gesture.details().velocity_y(); gesture_event.deltaX = gesture.details().velocity_x(); gesture_event.deltaY = gesture.details().velocity_y(); + case ui::ET_GESTURE_LONG_PRESS: + gesture_event.type = WebKit::WebInputEvent::GestureLongPress; + gesture_event.data.longPress.width = + gesture.details().bounding_box().width(); + gesture_event.data.longPress.height = + gesture.details().bounding_box().height(); + break; default: break; } diff --git a/content/browser/renderer_host/web_input_event_aurax11.cc b/content/browser/renderer_host/web_input_event_aurax11.cc index 9fc7134ae..4a6f5f8 100644 --- a/content/browser/renderer_host/web_input_event_aurax11.cc +++ b/content/browser/renderer_host/web_input_event_aurax11.cc @@ -364,6 +364,11 @@ WebKit::WebGestureEvent MakeWebGestureEventFromAuraEvent( switch (event->type()) { case ui::ET_GESTURE_TAP: gesture_event.type = WebKit::WebInputEvent::GestureTap; + gesture_event.data.tap.tapCount = event->details().tap_count(); + gesture_event.data.tap.width = event->details().bounding_box().width(); + gesture_event.data.tap.height = event->details().bounding_box().height(); + // TODO(rbyers): Stop setting deltaX once WebKit knows how to handle + // the other fields (here and below). crbug.com/143237 gesture_event.deltaX = event->details().tap_count(); break; case ui::ET_GESTURE_TAP_DOWN: @@ -377,6 +382,8 @@ WebKit::WebGestureEvent MakeWebGestureEventFromAuraEvent( break; case ui::ET_GESTURE_SCROLL_UPDATE: gesture_event.type = WebKit::WebInputEvent::GestureScrollUpdate; + gesture_event.data.scrollUpdate.deltaX = event->details().scroll_x(); + gesture_event.data.scrollUpdate.deltaY = event->details().scroll_y(); gesture_event.deltaX = event->details().scroll_x(); gesture_event.deltaY = event->details().scroll_y(); break; @@ -388,6 +395,7 @@ WebKit::WebGestureEvent MakeWebGestureEventFromAuraEvent( break; case ui::ET_GESTURE_PINCH_UPDATE: gesture_event.type = WebKit::WebInputEvent::GesturePinchUpdate; + gesture_event.data.pinchUpdate.scale = event->details().scale(); gesture_event.deltaX = event->details().scale(); break; case ui::ET_GESTURE_PINCH_END: @@ -395,6 +403,8 @@ WebKit::WebGestureEvent MakeWebGestureEventFromAuraEvent( break; case ui::ET_SCROLL_FLING_START: gesture_event.type = WebKit::WebInputEvent::GestureFlingStart; + gesture_event.data.flingStart.velocityX = event->details().velocity_x(); + gesture_event.data.flingStart.velocityY = event->details().velocity_y(); gesture_event.deltaX = event->details().velocity_x(); gesture_event.deltaY = event->details().velocity_y(); break; @@ -403,6 +413,10 @@ WebKit::WebGestureEvent MakeWebGestureEventFromAuraEvent( break; case ui::ET_GESTURE_LONG_PRESS: gesture_event.type = WebKit::WebInputEvent::GestureLongPress; + gesture_event.data.longPress.width = + event->details().bounding_box().width(); + gesture_event.data.longPress.height = + event->details().bounding_box().height(); break; case ui::ET_GESTURE_TWO_FINGER_TAP: gesture_event.type = WebKit::WebInputEvent::GestureTwoFingerTap; @@ -415,6 +429,8 @@ WebKit::WebGestureEvent MakeWebGestureEventFromAuraEvent( NOTREACHED() << "Unknown gesture type: " << event->type(); } + // TODO(rbyers): Also stop setting boundingBox for all events (as for delta + // above). gesture_event.boundingBox = event->details().bounding_box(); gesture_event.modifiers = EventFlagsToWebEventModifiers(event->flags()); gesture_event.timeStampSeconds = event->time_stamp().InSecondsF(); |