Chromium Code Reviews| Index: content/browser/renderer_host/render_widget_host_input_event_router.h |
| diff --git a/content/browser/renderer_host/render_widget_host_input_event_router.h b/content/browser/renderer_host/render_widget_host_input_event_router.h |
| index 5aba015645eed2f04eca6f882ef230c334c50493..1b0aff51e1117754368fb79d2b4d33e5e2221bf1 100644 |
| --- a/content/browser/renderer_host/render_widget_host_input_event_router.h |
| +++ b/content/browser/renderer_host/render_widget_host_input_event_router.h |
| @@ -6,6 +6,8 @@ |
| #define CONTENT_BROWSER_RENDERER_HOST_RENDER_WIDGET_HOST_INPUT_EVENT_ROUTER_H_ |
| #include <stdint.h> |
| + |
| +#include <deque> |
| #include <unordered_map> |
| #include "base/containers/hash_tables.h" |
| @@ -19,6 +21,7 @@ |
| struct FrameHostMsg_HittestData_Params; |
| namespace blink { |
| +class WebGestureEvent; |
| class WebMouseEvent; |
| class WebMouseWheelEvent; |
| class WebTouchEvent; |
| @@ -55,6 +58,9 @@ class CONTENT_EXPORT RenderWidgetHostInputEventRouter |
| blink::WebMouseEvent* event); |
| void RouteMouseWheelEvent(RenderWidgetHostViewBase* root_view, |
| blink::WebMouseWheelEvent* event); |
| + void RouteGestureEvent(RenderWidgetHostViewBase* root_view, |
| + blink::WebGestureEvent* event, |
| + const ui::LatencyInfo& latency); |
| void RouteTouchEvent(RenderWidgetHostViewBase* root_view, |
| blink::WebTouchEvent *event, |
| const ui::LatencyInfo& latency); |
| @@ -89,6 +95,14 @@ class CONTENT_EXPORT RenderWidgetHostInputEventRouter |
| using SurfaceIdNamespaceOwnerMap = |
| base::hash_map<uint32_t, RenderWidgetHostViewBase*>; |
| + struct GestureTargetData { |
| + RenderWidgetHostViewBase* target; |
|
tdresser
2016/03/02 17:54:43
const?
wjmaclean
2016/03/02 18:33:40
No ... this pointer is ultimately used to call a n
|
| + gfx::Vector2d delta; |
|
tdresser
2016/03/02 17:54:43
|delta| needs to be a full transform, doesn't it?
tdresser
2016/03/02 17:54:43
const?
wjmaclean
2016/03/02 18:33:40
Someday, yes. For this CL, no. We still need to de
wjmaclean
2016/03/02 18:33:40
Done.
|
| + |
| + GestureTargetData(RenderWidgetHostViewBase* target, gfx::Vector2d delta) |
| + : target(target), delta(delta) {} |
| + }; |
| + using GestureTargetQueue = std::deque<GestureTargetData>; |
| void ClearAllObserverRegistrations(); |
| @@ -97,8 +111,11 @@ class CONTENT_EXPORT RenderWidgetHostInputEventRouter |
| gfx::Point* transformed_point); |
| SurfaceIdNamespaceOwnerMap owner_map_; |
| + GestureTargetQueue gesture_target_queue_; |
| RenderWidgetHostViewBase* current_touch_target_; |
| + RenderWidgetHostViewBase* current_gesture_target_; |
| gfx::Vector2d touch_delta_; |
|
tdresser
2016/03/02 17:54:43
touch_sequence_transform_
gesture_sequence_transfo
wjmaclean
2016/03/02 18:33:40
Done.
|
| + gfx::Vector2d gesture_delta_; |
| int active_touches_; |
| std::unordered_map<cc::SurfaceId, HittestData, cc::SurfaceIdHash> |
| hittest_data_; |