Chromium Code Reviews| 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 b303acdb94cb21899d3042796cce2fe0c561ca98..fe5e4dc60fd995d389d0fd2e278ef1fff6c09fff 100644 |
| --- a/content/browser/renderer_host/input/input_router_impl.cc |
| +++ b/content/browser/renderer_host/input/input_router_impl.cc |
| @@ -13,11 +13,11 @@ |
| #include "content/browser/renderer_host/input/input_router_client.h" |
| #include "content/browser/renderer_host/input/touch_event_queue.h" |
| #include "content/browser/renderer_host/input/touchpad_tap_suppression_controller.h" |
| +#include "content/browser/renderer_host/input/web_touch_event_traits.h" |
| #include "content/browser/renderer_host/overscroll_controller.h" |
| #include "content/common/content_constants_internal.h" |
| #include "content/common/edit_command.h" |
| #include "content/common/input/touch_action.h" |
| -#include "content/common/input/web_input_event_traits.h" |
| #include "content/common/input_messages.h" |
| #include "content/common/view_messages.h" |
| #include "content/port/common/input_event_ack_state.h" |
| @@ -286,6 +286,9 @@ void InputRouterImpl::SendMouseEventImmediately( |
| void InputRouterImpl::SendTouchEventImmediately( |
| const TouchEventWithLatencyInfo& touch_event) { |
| + if (WebTouchEventTraits::IsTouchSequenceStart(touch_event.event)) |
| + touch_action_filter_.OnTouchSequenceStart(); |
| + |
| FilterAndSendWebInputEvent(touch_event.event, touch_event.latency, false); |
| } |
| @@ -335,6 +338,12 @@ bool InputRouterImpl::OnMessageReceived(const IPC::Message& message) { |
| void InputRouterImpl::OnTouchEventAck(const TouchEventWithLatencyInfo& event, |
| InputEventAckState ack_result) { |
| + // Touchstart events sent to the renderer indicate a new touch sequence, but |
| + // in some cases we may filter out sending the touchstart - catch those here. |
| + if (event.event.type == WebInputEvent::TouchStart && |
|
jdduke (slow)
2014/02/26 15:40:55
Shouldn't this be |IsTouchSequenceStart()|?
tdresser
2014/02/26 19:31:27
Done.
|
| + ack_result == INPUT_EVENT_ACK_STATE_NO_CONSUMER_EXISTS) { |
| + touch_action_filter_.OnTouchSequenceStart(); |
|
jdduke (slow)
2014/02/26 15:40:55
Can we rename |OnTouchSequenceStart()| to somethin
tdresser
2014/02/26 19:31:27
Done.
|
| + } |
| ack_handler_->OnTouchEventAck(event, ack_result); |
| } |