Index: content/renderer/input/input_handler_proxy.cc |
diff --git a/content/renderer/input/input_handler_proxy.cc b/content/renderer/input/input_handler_proxy.cc |
index f714ef1f3d956678b8ba0b3cd744f85715a142a7..535288761060daa8635b41c1826df4b5492e47e5 100644 |
--- a/content/renderer/input/input_handler_proxy.cc |
+++ b/content/renderer/input/input_handler_proxy.cc |
@@ -416,7 +416,9 @@ InputHandlerProxy::EventDisposition InputHandlerProxy::HandleMouseWheel( |
InputHandlerProxy::EventDisposition InputHandlerProxy::HandleGestureScrollBegin( |
const WebGestureEvent& gesture_event) { |
- DCHECK(!gesture_scroll_on_impl_thread_); |
+ if (gesture_scroll_on_impl_thread_) |
jdduke (slow)
2015/05/04 22:02:10
I'm surprised this was necessary, was there a part
hush (inactive)
2015/05/05 21:15:32
This is not necessary in chrome code I think.
In A
|
+ CancelCurrentFling(); |
+ |
#ifndef NDEBUG |
DCHECK(!expect_scroll_update_end_); |
expect_scroll_update_end_ = true; |
@@ -528,7 +530,7 @@ InputHandlerProxy::EventDisposition InputHandlerProxy::HandleGestureFlingStart( |
WebPoint(gesture_event.globalX, gesture_event.globalY); |
fling_parameters_.modifiers = gesture_event.modifiers; |
fling_parameters_.sourceDevice = gesture_event.sourceDevice; |
- input_handler_->SetNeedsAnimate(); |
+ input_handler_->SetNeedsAnimateInput(); |
return DID_HANDLE; |
} |
case cc::InputHandler::SCROLL_UNKNOWN: |
@@ -750,7 +752,7 @@ void InputHandlerProxy::Animate(base::TimeTicks time) { |
monotonic_time_sec >= fling_parameters_.startTime + |
kMaxSecondsFromFlingTimestampToFirstAnimate) { |
fling_parameters_.startTime = monotonic_time_sec; |
- input_handler_->SetNeedsAnimate(); |
+ input_handler_->SetNeedsAnimateInput(); |
return; |
} |
} |
@@ -763,7 +765,7 @@ void InputHandlerProxy::Animate(base::TimeTicks time) { |
fling_is_active = false; |
if (fling_is_active) { |
- input_handler_->SetNeedsAnimate(); |
+ input_handler_->SetNeedsAnimateInput(); |
} else { |
TRACE_EVENT_INSTANT0("input", |
"InputHandlerProxy::animate::flingOver", |