Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1092)

Unified Diff: content/browser/renderer_host/input/input_router_impl.cc

Issue 245833002: Implement async touchmove dispatch during scroll (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: More testing Created 6 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
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 129f34698a3b97b521c3dbc4f61b1194154da54f..629efc06f13c9417dc70e33cdb0b672c25a8596e 100644
--- a/content/browser/renderer_host/input/input_router_impl.cc
+++ b/content/browser/renderer_host/input/input_router_impl.cc
@@ -88,10 +88,10 @@ double GetTouchMoveSlopSuppressionLengthDips() {
TouchEventQueue::TouchScrollingMode GetTouchScrollingMode() {
std::string modeString = CommandLine::ForCurrentProcess()->
GetSwitchValueASCII(switches::kTouchScrollingMode);
+ if (modeString == switches::kTouchScrollingModeAsyncTouchmove)
+ return TouchEventQueue::TOUCH_SCROLLING_MODE_ASYNC_TOUCHMOVE;
if (modeString == switches::kTouchScrollingModeSyncTouchmove)
return TouchEventQueue::TOUCH_SCROLLING_MODE_SYNC_TOUCHMOVE;
- if (modeString == switches::kTouchScrollingModeAbsorbTouchmove)
- return TouchEventQueue::TOUCH_SCROLLING_MODE_ABSORB_TOUCHMOVE;
if (modeString == switches::kTouchScrollingModeTouchcancel)
return TouchEventQueue::TOUCH_SCROLLING_MODE_TOUCHCANCEL;
if (modeString != "")
@@ -447,7 +447,7 @@ void InputRouterImpl::OfferToHandlers(const WebInputEvent& input_event,
OfferToRenderer(input_event, latency_info, is_keyboard_shortcut);
// If we don't care about the ack disposition, send the ack immediately.
- if (WebInputEventTraits::IgnoresAckDisposition(input_event.type)) {
+ if (WebInputEventTraits::IgnoresAckDisposition(input_event)) {
ProcessInputEventAck(input_event.type,
INPUT_EVENT_ACK_STATE_IGNORED,
latency_info,
@@ -521,10 +521,10 @@ bool InputRouterImpl::OfferToRenderer(const WebInputEvent& input_event,
bool is_keyboard_shortcut) {
if (Send(new InputMsg_HandleInputEvent(
routing_id(), &input_event, latency_info, is_keyboard_shortcut))) {
- // Ack messages for ignored ack event types are not required, and might
- // never be sent by the renderer. Consequently, such event types should not
- // affect event timing or in-flight event count metrics.
- if (!WebInputEventTraits::IgnoresAckDisposition(input_event.type)) {
+ // Ack messages for ignored ack event types should never be sent by the
+ // renderer. Consequently, such event types should not affect event time
+ // or in-flight event count metrics.
+ if (!WebInputEventTraits::IgnoresAckDisposition(input_event)) {
input_event_start_time_ = TimeTicks::Now();
client_->IncrementInFlightEventCount();
}
@@ -536,11 +536,6 @@ bool InputRouterImpl::OfferToRenderer(const WebInputEvent& input_event,
void InputRouterImpl::OnInputEventAck(WebInputEvent::Type event_type,
InputEventAckState ack_result,
const ui::LatencyInfo& latency_info) {
- // A synthetic ack will already have been sent for this event, and it should
- // not affect event timing or in-flight count metrics.
- if (WebInputEventTraits::IgnoresAckDisposition(event_type))
- return;
-
client_->DecrementInFlightEventCount();
// Log the time delta for processing an input event.

Powered by Google App Engine
This is Rietveld 408576698