Index: ui/events/blink/blink_event_util.cc |
diff --git a/ui/events/blink/blink_event_util.cc b/ui/events/blink/blink_event_util.cc |
index e961436362109b22eeee20b8650f31cbe85dd0ea..6378ce21ff9968ecc7e1652a547c9d451f982fbf 100644 |
--- a/ui/events/blink/blink_event_util.cc |
+++ b/ui/events/blink/blink_event_util.cc |
@@ -333,8 +333,11 @@ void Coalesce(const WebTouchEvent& event_to_coalesce, WebTouchEvent* event) { |
*event = event_to_coalesce; |
for (unsigned i = 0; i < event->touchesLength; ++i) { |
int i_old = GetIndexOfTouchID(old_event, event->touches[i].id); |
- if (old_event.touches[i_old].state == blink::WebTouchPoint::StateMoved) |
+ if (old_event.touches[i_old].state == blink::WebTouchPoint::StateMoved) { |
event->touches[i].state = blink::WebTouchPoint::StateMoved; |
+ event->touches[i].movementX += old_event.touches[i_old].movementX; |
+ event->touches[i].movementY += old_event.touches[i_old].movementY; |
+ } |
} |
event->movedBeyondSlopRegion |= old_event.movedBeyondSlopRegion; |
event->dispatchType = MergeDispatchTypes(old_event.dispatchType, |