Index: content/browser/renderer_host/render_widget_host_impl.cc |
diff --git a/content/browser/renderer_host/render_widget_host_impl.cc b/content/browser/renderer_host/render_widget_host_impl.cc |
index f43e3f85938712b86791115ae17e4877f1c3a7fb..bb8be59a0be0004503b9ab0a906d55a6cde96bb2 100644 |
--- a/content/browser/renderer_host/render_widget_host_impl.cc |
+++ b/content/browser/renderer_host/render_widget_host_impl.cc |
@@ -976,6 +976,8 @@ void RenderWidgetHostImpl::ForwardMouseEventWithLatencyInfo( |
MouseEventWithLatencyInfo mouse_with_latency(mouse_event, ui_latency); |
latency_tracker_.OnInputEvent(mouse_event, &mouse_with_latency.latency); |
input_router_->SendMouseEvent(mouse_with_latency); |
+ FOR_EACH_OBSERVER(InputEventObserver, input_event_observers_, |
+ OnInputEvent(mouse_event)); |
} |
void RenderWidgetHostImpl::ForwardWheelEvent( |
@@ -998,6 +1000,8 @@ void RenderWidgetHostImpl::ForwardWheelEventWithLatencyInfo( |
MouseWheelEventWithLatencyInfo wheel_with_latency(wheel_event, ui_latency); |
latency_tracker_.OnInputEvent(wheel_event, &wheel_with_latency.latency); |
Bryan McQuade
2016/05/27 20:06:36
can we add a helper method:
void RenderWidgetHost
mushan1
2016/05/28 03:58:32
Done.
|
input_router_->SendWheelEvent(wheel_with_latency); |
+ FOR_EACH_OBSERVER(InputEventObserver, input_event_observers_, |
+ OnInputEvent(wheel_event)); |
} |
void RenderWidgetHostImpl::ForwardEmulatedGestureEvent( |
@@ -1054,6 +1058,8 @@ void RenderWidgetHostImpl::ForwardGestureEventWithLatencyInfo( |
GestureEventWithLatencyInfo gesture_with_latency(gesture_event, ui_latency); |
latency_tracker_.OnInputEvent(gesture_event, &gesture_with_latency.latency); |
input_router_->SendGestureEvent(gesture_with_latency); |
+ FOR_EACH_OBSERVER(InputEventObserver, input_event_observers_, |
+ OnInputEvent(gesture_event)); |
if (scroll_update_needs_wrapping) { |
ForwardGestureEventWithLatencyInfo( |
@@ -1068,6 +1074,8 @@ void RenderWidgetHostImpl::ForwardEmulatedTouchEvent( |
TouchEventWithLatencyInfo touch_with_latency(touch_event); |
latency_tracker_.OnInputEvent(touch_event, &touch_with_latency.latency); |
input_router_->SendTouchEvent(touch_with_latency); |
+ FOR_EACH_OBSERVER(InputEventObserver, input_event_observers_, |
+ OnInputEvent(touch_event)); |
} |
void RenderWidgetHostImpl::ForwardTouchEventWithLatencyInfo( |
@@ -1090,6 +1098,8 @@ void RenderWidgetHostImpl::ForwardTouchEventWithLatencyInfo( |
latency_tracker_.OnInputEvent(touch_event, &touch_with_latency.latency); |
input_router_->SendTouchEvent(touch_with_latency); |
+ FOR_EACH_OBSERVER(InputEventObserver, input_event_observers_, |
+ OnInputEvent(touch_event)); |
} |
void RenderWidgetHostImpl::ForwardKeyboardEvent( |
@@ -1159,6 +1169,8 @@ void RenderWidgetHostImpl::ForwardKeyboardEvent( |
key_event_with_latency.event.isBrowserShortcut = is_shortcut; |
latency_tracker_.OnInputEvent(key_event, &key_event_with_latency.latency); |
input_router_->SendKeyboardEvent(key_event_with_latency); |
+ FOR_EACH_OBSERVER(InputEventObserver, input_event_observers_, |
+ OnInputEvent(key_event)); |
} |
void RenderWidgetHostImpl::QueueSyntheticGesture( |
@@ -1229,6 +1241,16 @@ void RenderWidgetHostImpl::RemoveMouseEventCallback( |
} |
} |
+void RenderWidgetHostImpl::AddInputEventObserver( |
+ RenderWidgetHost::InputEventObserver* observer) { |
+ input_event_observers_.AddObserver(observer); |
+} |
+ |
+void RenderWidgetHostImpl::RemoveInputEventObserver( |
+ RenderWidgetHost::InputEventObserver* observer) { |
+ input_event_observers_.RemoveObserver(observer); |
+} |
+ |
void RenderWidgetHostImpl::GetWebScreenInfo(blink::WebScreenInfo* result) { |
TRACE_EVENT0("renderer_host", "RenderWidgetHostImpl::GetWebScreenInfo"); |
if (view_) |