Chromium Code Reviews| Index: content/browser/renderer_host/input/legacy_touch_event_queue.h |
| diff --git a/content/browser/renderer_host/input/legacy_touch_event_queue.h b/content/browser/renderer_host/input/legacy_touch_event_queue.h |
| index 60f9c6b7f373a0b20baf212e7cacd2bf321f2d5f..8468cde1f02e9c3c98a5e56470bb69d4b03eea0d 100644 |
| --- a/content/browser/renderer_host/input/legacy_touch_event_queue.h |
| +++ b/content/browser/renderer_host/input/legacy_touch_event_queue.h |
| @@ -24,6 +24,7 @@ |
| namespace content { |
| class CoalescedWebTouchEvent; |
| +class TouchTimeoutHandler; |
|
tdresser
2017/02/21 18:16:31
Why are we forward declaring this?
dtapuska
2017/02/21 18:26:47
Because there is an instance ptr in this class.
tdresser
2017/02/21 18:27:21
Acknowledged.
|
| // A queue for throttling and coalescing touch-events. |
| class CONTENT_EXPORT LegacyTouchEventQueue : public TouchEventQueue { |
| @@ -95,8 +96,6 @@ class CONTENT_EXPORT LegacyTouchEventQueue : public TouchEventQueue { |
| } |
| private: |
| - class TouchTimeoutHandler; |
| - friend class TouchTimeoutHandler; |
| friend class TouchEventQueueTest; |
| bool HasPendingAsyncTouchMoveForTesting() const; |
| @@ -105,7 +104,7 @@ class CONTENT_EXPORT LegacyTouchEventQueue : public TouchEventQueue { |
| // Empties the queue of touch events. This may result in any number of gesture |
| // events being sent to the renderer. |
| - void FlushQueue(); |
| + void FlushQueue() override; |
| // Walks the queue, checking each event with |FilterBeforeForwarding()|. |
| // If allowed, forwards the touch event and stops processing further events. |
| @@ -129,6 +128,10 @@ class CONTENT_EXPORT LegacyTouchEventQueue : public TouchEventQueue { |
| void AckTouchEventToClient(InputEventAckState ack_result, |
| const ui::LatencyInfo* optional_latency_info); |
| + // Dispatch a touch cancel event for the |event_to_cancel|. |
| + void SendTouchCancelEventForTouchEvent( |
| + const TouchEventWithLatencyInfo& event_to_cancel) override; |
| + |
| // Dispatch |touch| to the client. Before dispatching, updates pointer |
| // states in touchmove events for pointers that have not changed position. |
| void SendTouchEventImmediately(TouchEventWithLatencyInfo* touch); |
| @@ -143,7 +146,7 @@ class CONTENT_EXPORT LegacyTouchEventQueue : public TouchEventQueue { |
| PreFilterResult FilterBeforeForwarding(const blink::WebTouchEvent& event); |
| void ForwardToRenderer(const TouchEventWithLatencyInfo& event); |
| void UpdateTouchConsumerStates(const blink::WebTouchEvent& event, |
| - InputEventAckState ack_result); |
| + InputEventAckState ack_result) override; |
| void FlushPendingAsyncTouchmove(); |
| // Handles touch event forwarding and ack'ed event dispatch. |
| @@ -151,10 +154,6 @@ class CONTENT_EXPORT LegacyTouchEventQueue : public TouchEventQueue { |
| std::list<std::unique_ptr<CoalescedWebTouchEvent>> touch_queue_; |
| - // Position of the first touch in the most recent sequence forwarded to the |
| - // client. |
| - gfx::PointF touch_sequence_start_position_; |
| - |
| // Used to defer touch forwarding when ack dispatch triggers |QueueEvent()|. |
| // True within the scope of |AckTouchEventToClient()|. |
| bool dispatching_touch_ack_; |