| OLD | NEW |
| 1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #ifndef CONTENT_BROWSER_RENDERER_HOST_INPUT_INPUT_ROUTER_IMPL_H_ | 5 #ifndef CONTENT_BROWSER_RENDERER_HOST_INPUT_INPUT_ROUTER_IMPL_H_ |
| 6 #define CONTENT_BROWSER_RENDERER_HOST_INPUT_INPUT_ROUTER_IMPL_H_ | 6 #define CONTENT_BROWSER_RENDERER_HOST_INPUT_INPUT_ROUTER_IMPL_H_ |
| 7 | 7 |
| 8 #include <queue> | 8 #include <queue> |
| 9 | 9 |
| 10 #include "base/basictypes.h" | 10 #include "base/basictypes.h" |
| (...skipping 126 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 137 RENDERER, | 137 RENDERER, |
| 138 CLIENT, | 138 CLIENT, |
| 139 IGNORING_DISPOSITION, | 139 IGNORING_DISPOSITION, |
| 140 ACK_SOURCE_NONE | 140 ACK_SOURCE_NONE |
| 141 }; | 141 }; |
| 142 // Note: This function may result in |this| being deleted, and as such | 142 // Note: This function may result in |this| being deleted, and as such |
| 143 // should be the last method called in any internal chain of event handling. | 143 // should be the last method called in any internal chain of event handling. |
| 144 void ProcessInputEventAck(blink::WebInputEvent::Type event_type, | 144 void ProcessInputEventAck(blink::WebInputEvent::Type event_type, |
| 145 InputEventAckState ack_result, | 145 InputEventAckState ack_result, |
| 146 const ui::LatencyInfo& latency_info, | 146 const ui::LatencyInfo& latency_info, |
| 147 uint32 uniqueEventId, |
| 147 AckSource ack_source); | 148 AckSource ack_source); |
| 148 | 149 |
| 149 // Dispatches the ack'ed event to |ack_handler_|. | 150 // Dispatches the ack'ed event to |ack_handler_|. |
| 150 void ProcessKeyboardAck(blink::WebInputEvent::Type type, | 151 void ProcessKeyboardAck(blink::WebInputEvent::Type type, |
| 151 InputEventAckState ack_result); | 152 InputEventAckState ack_result); |
| 152 | 153 |
| 153 // Forwards a valid |next_mouse_move_| if |type| is MouseMove. | 154 // Forwards a valid |next_mouse_move_| if |type| is MouseMove. |
| 154 void ProcessMouseAck(blink::WebInputEvent::Type type, | 155 void ProcessMouseAck(blink::WebInputEvent::Type type, |
| 155 InputEventAckState ack_result); | 156 InputEventAckState ack_result); |
| 156 | 157 |
| 157 // Dispatches the ack'ed event to |ack_handler_|, forwarding queued events | 158 // Dispatches the ack'ed event to |ack_handler_|, forwarding queued events |
| 158 // from |coalesced_mouse_wheel_events_|. | 159 // from |coalesced_mouse_wheel_events_|. |
| 159 void ProcessWheelAck(InputEventAckState ack_result, | 160 void ProcessWheelAck(InputEventAckState ack_result, |
| 160 const ui::LatencyInfo& latency); | 161 const ui::LatencyInfo& latency); |
| 161 | 162 |
| 162 // Forwards the event ack to |gesture_event_queue|, potentially triggering | 163 // Forwards the event ack to |gesture_event_queue|, potentially triggering |
| 163 // dispatch of queued gesture events. | 164 // dispatch of queued gesture events. |
| 164 void ProcessGestureAck(blink::WebInputEvent::Type type, | 165 void ProcessGestureAck(blink::WebInputEvent::Type type, |
| 165 InputEventAckState ack_result, | 166 InputEventAckState ack_result, |
| 166 const ui::LatencyInfo& latency); | 167 const ui::LatencyInfo& latency); |
| 167 | 168 |
| 168 // Forwards the event ack to |touch_event_queue_|, potentially triggering | 169 // Forwards the event ack to |touch_event_queue_|, potentially triggering |
| 169 // dispatch of queued touch events, or the creation of gesture events. | 170 // dispatch of queued touch events, or the creation of gesture events. |
| 170 void ProcessTouchAck(InputEventAckState ack_result, | 171 void ProcessTouchAck(InputEventAckState ack_result, |
| 171 const ui::LatencyInfo& latency); | 172 const ui::LatencyInfo& latency, |
| 173 uint32 unique_touch_event_id); |
| 172 | 174 |
| 173 // Called when a touch timeout-affecting bit has changed, in turn toggling the | 175 // Called when a touch timeout-affecting bit has changed, in turn toggling the |
| 174 // touch ack timeout feature of the |touch_event_queue_| as appropriate. Input | 176 // touch ack timeout feature of the |touch_event_queue_| as appropriate. Input |
| 175 // to that determination includes current view properties and the allowed | 177 // to that determination includes current view properties and the allowed |
| 176 // touch action. Note that this will only affect platforms that have a | 178 // touch action. Note that this will only affect platforms that have a |
| 177 // non-zero touch timeout configuration. | 179 // non-zero touch timeout configuration. |
| 178 void UpdateTouchAckTimeoutEnabled(); | 180 void UpdateTouchAckTimeoutEnabled(); |
| 179 | 181 |
| 180 // If a flush has been requested, signals a completed flush to the client if | 182 // If a flush has been requested, signals a completed flush to the client if |
| 181 // all events have been dispatched (i.e., |HasPendingEvents()| is false). | 183 // all events have been dispatched (i.e., |HasPendingEvents()| is false). |
| (...skipping 71 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 253 TouchActionFilter touch_action_filter_; | 255 TouchActionFilter touch_action_filter_; |
| 254 InputEventStreamValidator input_stream_validator_; | 256 InputEventStreamValidator input_stream_validator_; |
| 255 InputEventStreamValidator output_stream_validator_; | 257 InputEventStreamValidator output_stream_validator_; |
| 256 | 258 |
| 257 DISALLOW_COPY_AND_ASSIGN(InputRouterImpl); | 259 DISALLOW_COPY_AND_ASSIGN(InputRouterImpl); |
| 258 }; | 260 }; |
| 259 | 261 |
| 260 } // namespace content | 262 } // namespace content |
| 261 | 263 |
| 262 #endif // CONTENT_BROWSER_RENDERER_HOST_INPUT_INPUT_ROUTER_IMPL_H_ | 264 #endif // CONTENT_BROWSER_RENDERER_HOST_INPUT_INPUT_ROUTER_IMPL_H_ |
| OLD | NEW |