| Index: ui/events/gesture_detection/gesture_event_data_packet.h
|
| diff --git a/ui/events/gesture_detection/gesture_event_data_packet.h b/ui/events/gesture_detection/gesture_event_data_packet.h
|
| index 9b115de9ca77b29c2210b4933cd9a78acbb69198..8b0c63f063c29eb7a7b087cd41a52ece3d100c07 100644
|
| --- a/ui/events/gesture_detection/gesture_event_data_packet.h
|
| +++ b/ui/events/gesture_detection/gesture_event_data_packet.h
|
| @@ -29,6 +29,12 @@ class GESTURE_DETECTION_EXPORT GestureEventDataPacket {
|
| TOUCH_TIMEOUT, // Timeout from an existing gesture sequence.
|
| };
|
|
|
| + enum class AckState {
|
| + PENDING,
|
| + CONSUMED,
|
| + UNCONSUMED,
|
| + };
|
| +
|
| GestureEventDataPacket();
|
| GestureEventDataPacket(const GestureEventDataPacket& other);
|
| ~GestureEventDataPacket();
|
| @@ -48,11 +54,18 @@ class GESTURE_DETECTION_EXPORT GestureEventDataPacket {
|
| const gfx::PointF& touch_location() const { return touch_location_; }
|
| const gfx::PointF& raw_touch_location() const { return raw_touch_location_; }
|
|
|
| + // We store the ack with the packet until the packet reaches the
|
| + // head of the queue, and then we handle the ack.
|
| + void Ack(bool event_consumed);
|
| + AckState ack_state() { return ack_state_; }
|
| + uint32 unique_touch_event_id() const { return unique_touch_event_id_; }
|
| +
|
| private:
|
| GestureEventDataPacket(base::TimeTicks timestamp,
|
| GestureSource source,
|
| const gfx::PointF& touch_location,
|
| - const gfx::PointF& raw_touch_location);
|
| + const gfx::PointF& raw_touch_location,
|
| + uint32 unique_touch_event_id);
|
|
|
| enum { kTypicalMaxGesturesPerTouch = 5 };
|
| base::TimeTicks timestamp_;
|
| @@ -60,6 +73,8 @@ class GESTURE_DETECTION_EXPORT GestureEventDataPacket {
|
| gfx::PointF touch_location_;
|
| gfx::PointF raw_touch_location_;
|
| GestureSource gesture_source_;
|
| + AckState ack_state_;
|
| + uint32 unique_touch_event_id_;
|
| };
|
|
|
| } // namespace ui
|
|
|