Index: content/browser/renderer_host/input/gesture_event_filter.cc |
diff --git a/content/browser/renderer_host/input/gesture_event_filter.cc b/content/browser/renderer_host/input/gesture_event_filter.cc |
index 8639043edd6766a4f1f377cc371ac6d16a1a19c3..60bb6a66ece2acf8948e07a8a47dabce4dcfe530 100644 |
--- a/content/browser/renderer_host/input/gesture_event_filter.cc |
+++ b/content/browser/renderer_host/input/gesture_event_filter.cc |
@@ -373,16 +373,11 @@ void GestureEventFilter::MergeOrInsertScrollAndPinchEvent( |
return; |
} |
GestureEventWithLatencyInfo* last_event = &coalesced_gesture_events_.back(); |
- if (gesture_event.event.type == WebInputEvent::GestureScrollUpdate && |
- last_event->event.type == WebInputEvent::GestureScrollUpdate && |
- last_event->event.modifiers == gesture_event.event.modifiers) { |
- last_event->event.data.scrollUpdate.deltaX += |
- gesture_event.event.data.scrollUpdate.deltaX; |
- last_event->event.data.scrollUpdate.deltaY += |
- gesture_event.event.data.scrollUpdate.deltaY; |
- last_event->latency.MergeWith(gesture_event.latency); |
+ if (last_event->CanCoalesceWith(gesture_event)) { |
+ last_event->CoalesceWith(gesture_event); |
return; |
} |
+ |
if (coalesced_gesture_events_.size() == 2 || |
(coalesced_gesture_events_.size() == 3 && ignore_next_ack_) || |
!ShouldTryMerging(gesture_event, *last_event)) { |