| Index: content/browser/renderer_host/render_widget_host_input_event_router.cc
|
| diff --git a/content/browser/renderer_host/render_widget_host_input_event_router.cc b/content/browser/renderer_host/render_widget_host_input_event_router.cc
|
| index f742708ad8d39b3aaa0fc50c08a1c5eba1a5aad1..8cbeb4dd0dd89bec54704a5e75f73cec60ab3344 100644
|
| --- a/content/browser/renderer_host/render_widget_host_input_event_router.cc
|
| +++ b/content/browser/renderer_host/render_widget_host_input_event_router.cc
|
| @@ -16,6 +16,7 @@
|
| #include "content/browser/renderer_host/render_widget_host_view_base.h"
|
| #include "content/common/frame_messages.h"
|
| #include "third_party/WebKit/public/web/WebInputEvent.h"
|
| +#include "ui/events/blink/web_input_event_traits.h"
|
|
|
| namespace {
|
|
|
| @@ -169,7 +170,8 @@ RenderWidgetHostViewBase* RenderWidgetHostInputEventRouter::FindEventTarget(
|
|
|
| void RenderWidgetHostInputEventRouter::RouteMouseEvent(
|
| RenderWidgetHostViewBase* root_view,
|
| - blink::WebMouseEvent* event) {
|
| + blink::WebMouseEvent* event,
|
| + const ui::LatencyInfo& latency) {
|
| RenderWidgetHostViewBase* target;
|
| gfx::Point transformed_point;
|
| const int mouse_button_modifiers = blink::WebInputEvent::LeftButtonDown |
|
| @@ -214,15 +216,13 @@ void RenderWidgetHostInputEventRouter::RouteMouseEvent(
|
|
|
| event->x = transformed_point.x();
|
| event->y = transformed_point.y();
|
| - // TODO(wjmaclean): Initialize latency info correctly for OOPIFs.
|
| - // https://crbug.com/613628
|
| - ui::LatencyInfo latency_info;
|
| - target->ProcessMouseEvent(*event, latency_info);
|
| + target->ProcessMouseEvent(*event, latency);
|
| }
|
|
|
| void RenderWidgetHostInputEventRouter::RouteMouseWheelEvent(
|
| RenderWidgetHostViewBase* root_view,
|
| - blink::WebMouseWheelEvent* event) {
|
| + blink::WebMouseWheelEvent* event,
|
| + const ui::LatencyInfo& latency) {
|
| gfx::Point transformed_point;
|
| RenderWidgetHostViewBase* target = FindEventTarget(
|
| root_view, gfx::Point(event->x, event->y), &transformed_point);
|
| @@ -231,10 +231,7 @@ void RenderWidgetHostInputEventRouter::RouteMouseWheelEvent(
|
|
|
| event->x = transformed_point.x();
|
| event->y = transformed_point.y();
|
| - // TODO(wjmaclean): Initialize latency info correctly for OOPIFs.
|
| - // https://crbug.com/613628
|
| - ui::LatencyInfo latency_info;
|
| - target->ProcessMouseWheelEvent(*event, latency_info);
|
| + target->ProcessMouseWheelEvent(*event, latency);
|
| }
|
|
|
| void RenderWidgetHostInputEventRouter::RouteGestureEvent(
|
| @@ -474,11 +471,14 @@ void RenderWidgetHostInputEventRouter::BubbleScrollEvent(
|
| DCHECK(!first_bubbling_scroll_target_.target ==
|
| !bubbling_gesture_scroll_target_.target);
|
|
|
| + ui::LatencyInfo latency_info =
|
| + ui::WebInputEventTraits::CreateLatencyInfoForWebGestureEvent(event);
|
| +
|
| // If target_view is already set up for bubbled scrolls, we forward
|
| // the event to the current scroll target without further consideration.
|
| if (target_view == first_bubbling_scroll_target_.target) {
|
| - bubbling_gesture_scroll_target_.target->ProcessGestureEvent(
|
| - event, ui::LatencyInfo());
|
| + bubbling_gesture_scroll_target_.target->ProcessGestureEvent(event,
|
| + latency_info);
|
| if (event.type == blink::WebInputEvent::GestureScrollEnd) {
|
| first_bubbling_scroll_target_.target = nullptr;
|
| bubbling_gesture_scroll_target_.target = nullptr;
|
| @@ -496,8 +496,8 @@ void RenderWidgetHostInputEventRouter::BubbleScrollEvent(
|
| // have been sent to a renderer before the first one was ACKed, and the ACK
|
| // caused a bubble retarget. In this case they all get forwarded.
|
| if (target_view == bubbling_gesture_scroll_target_.target) {
|
| - bubbling_gesture_scroll_target_.target->ProcessGestureEvent(
|
| - event, ui::LatencyInfo());
|
| + bubbling_gesture_scroll_target_.target->ProcessGestureEvent(event,
|
| + latency_info);
|
| return;
|
| }
|
|
|
| @@ -522,7 +522,7 @@ void RenderWidgetHostInputEventRouter::BubbleScrollEvent(
|
| bubbling_gesture_scroll_target_.target = target_view;
|
|
|
| SendGestureScrollBegin(target_view, event);
|
| - target_view->ProcessGestureEvent(event, ui::LatencyInfo());
|
| + target_view->ProcessGestureEvent(event, latency_info);
|
| }
|
|
|
| void RenderWidgetHostInputEventRouter::SendGestureScrollBegin(
|
| @@ -536,7 +536,9 @@ void RenderWidgetHostInputEventRouter::SendGestureScrollBegin(
|
| scroll_begin.data.scrollBegin.deltaYHint = event.data.scrollUpdate.deltaY;
|
| scroll_begin.data.scrollBegin.deltaHintUnits =
|
| event.data.scrollUpdate.deltaUnits;
|
| - view->ProcessGestureEvent(scroll_begin, ui::LatencyInfo());
|
| + view->ProcessGestureEvent(
|
| + scroll_begin,
|
| + ui::WebInputEventTraits::CreateLatencyInfoForWebGestureEvent(event));
|
| }
|
|
|
| void RenderWidgetHostInputEventRouter::SendGestureScrollEnd(
|
| @@ -551,7 +553,9 @@ void RenderWidgetHostInputEventRouter::SendGestureScrollEnd(
|
| scroll_end.data.scrollEnd.inertialPhase =
|
| event.data.scrollUpdate.inertialPhase;
|
| scroll_end.data.scrollEnd.deltaUnits = event.data.scrollUpdate.deltaUnits;
|
| - view->ProcessGestureEvent(scroll_end, ui::LatencyInfo());
|
| + view->ProcessGestureEvent(
|
| + scroll_end,
|
| + ui::WebInputEventTraits::CreateLatencyInfoForWebGestureEvent(event));
|
| }
|
|
|
| void RenderWidgetHostInputEventRouter::CancelScrollBubbling(
|
|
|