Index: content/browser/renderer_host/input/input_router_impl.cc |
diff --git a/content/browser/renderer_host/input/input_router_impl.cc b/content/browser/renderer_host/input/input_router_impl.cc |
index b802aede152e23f7697832932893fb24628b2336..9113bee8604a841a4e664fdd0fb273cb055d7760 100644 |
--- a/content/browser/renderer_host/input/input_router_impl.cc |
+++ b/content/browser/renderer_host/input/input_router_impl.cc |
@@ -136,14 +136,11 @@ |
// dropping the old event, as for mouse moves) results in very slow |
// scrolling on the Mac (on which many, very small wheel events are sent). |
// Note that we can't coalesce wheel events for pinches because the GEQ |
- // expects one ACK for each. But such events always have canScroll==false |
- // and hasPreciseDeltas=true, which should never happen for a real wheel |
- // event and so coalescing shouldn't occur. Note that the |
- // GestureEventQueue ensures we only ever have a single pinch event queued |
- // here. |
+ // expects one ACK for each (but it's fine to coalesce non-pinch wheels |
+ // into a pinch one). Note that the GestureEventQueue ensures we only |
+ // ever have a single pinch event queued here. |
if (coalesced_mouse_wheel_events_.empty() || |
- wheel_event.synthesized_from_pinch != |
- coalesced_mouse_wheel_events_.back().synthesized_from_pinch || |
+ wheel_event.synthesized_from_pinch || |
!coalesced_mouse_wheel_events_.back().event.CanCoalesceWith( |
wheel_event.event)) { |
coalesced_mouse_wheel_events_.push_back(wheel_event); |
@@ -461,7 +458,7 @@ |
wheelEvent.wheelTicksX = 0; |
wheelEvent.wheelTicksY = |
pinch_event.event.data.pinchUpdate.scale > 1 ? 1 : -1; |
- wheelEvent.canScroll = false; |
+ |
SendWheelEvent(QueuedWheelEvent( |
MouseWheelEventWithLatencyInfo(wheelEvent, pinch_event.latency), true)); |
} |