Index: content/renderer/input/input_handler_wrapper.cc |
diff --git a/content/renderer/input/input_handler_wrapper.cc b/content/renderer/input/input_handler_wrapper.cc |
index b994f09095060872733be792600614c5c8d1c876..d72cc38eb31666a4dd9b24949a41b3f8db00ec35 100644 |
--- a/content/renderer/input/input_handler_wrapper.cc |
+++ b/content/renderer/input/input_handler_wrapper.cc |
@@ -90,4 +90,22 @@ void InputHandlerWrapper::DidAnimateForInput() { |
input_handler_manager_->DidAnimateForInput(); |
} |
+void InputHandlerWrapper::GenerateScrollBeginAndSendToMainThread( |
+ const blink::WebGestureEvent& update_event) { |
+ DCHECK_EQ(update_event.GetType(), blink::WebInputEvent::kGestureScrollUpdate); |
+ blink::WebGestureEvent scroll_begin(update_event); |
+ scroll_begin.SetType(blink::WebInputEvent::kGestureScrollBegin); |
+ scroll_begin.data.scroll_begin.inertial_phase = |
+ update_event.data.scroll_update.inertial_phase; |
+ scroll_begin.data.scroll_begin.delta_x_hint = |
+ update_event.data.scroll_update.delta_x; |
+ scroll_begin.data.scroll_begin.delta_y_hint = |
+ update_event.data.scroll_update.delta_y; |
+ scroll_begin.data.scroll_begin.delta_hint_units = |
+ update_event.data.scroll_update.delta_units; |
+ |
+ DispatchNonBlockingEventToMainThread( |
+ ui::WebInputEventTraits::Clone(scroll_begin), ui::LatencyInfo()); |
+} |
+ |
} // namespace content |