Index: content/renderer/input/render_widget_input_handler.cc |
diff --git a/content/renderer/input/render_widget_input_handler.cc b/content/renderer/input/render_widget_input_handler.cc |
index 46bd4c5250fdff995699cbae0748896bf002d9d5..8659f380f0047e1edcc7d43b3b5ce266faf3987a 100644 |
--- a/content/renderer/input/render_widget_input_handler.cc |
+++ b/content/renderer/input/render_widget_input_handler.cc |
@@ -124,6 +124,7 @@ void LogPassiveEventListenersUma(WebInputEventResult result, |
PASSIVE_LISTENER_UMA_ENUM_CANCELABLE, |
PASSIVE_LISTENER_UMA_ENUM_CANCELABLE_AND_CANCELED, |
PASSIVE_LISTENER_UMA_ENUM_FORCED_NON_BLOCKING_DUE_TO_FLING, |
+ PASSIVE_LISTENER_UMA_ENUM_FORCED_NON_BLOCKING_DUE_TO_MAIN_THREAD_RESPONSIVENESS, |
PASSIVE_LISTENER_UMA_ENUM_COUNT |
}; |
@@ -132,6 +133,10 @@ void LogPassiveEventListenersUma(WebInputEventResult result, |
case WebInputEvent::ListenersForcedNonBlockingDueToFling: |
enum_value = PASSIVE_LISTENER_UMA_ENUM_FORCED_NON_BLOCKING_DUE_TO_FLING; |
break; |
+ case WebInputEvent::ListenersForcedNonBlockingDueToMainThreadResponsiveness: |
+ enum_value = |
+ PASSIVE_LISTENER_UMA_ENUM_FORCED_NON_BLOCKING_DUE_TO_MAIN_THREAD_RESPONSIVENESS; |
+ break; |
case WebInputEvent::ListenersNonBlockingPassive: |
enum_value = PASSIVE_LISTENER_UMA_ENUM_PASSIVE; |
break; |
@@ -166,6 +171,14 @@ void LogPassiveEventListenersUma(WebInputEventResult result, |
UMA_HISTOGRAM_CUSTOM_COUNTS( |
"Event.PassiveListeners.ForcedNonBlockingLatencyDueToFling", |
GetEventLatencyMicros(event_timestamp, now), 1, 10000000, 100); |
+ } else if ( |
+ enum_value == |
+ PASSIVE_LISTENER_UMA_ENUM_FORCED_NON_BLOCKING_DUE_TO_MAIN_THREAD_RESPONSIVENESS) { |
+ base::TimeTicks now = base::TimeTicks::Now(); |
+ UMA_HISTOGRAM_CUSTOM_COUNTS( |
+ "Event.PassiveListeners." |
+ "ForcedNonBlockingLatencyDueToUnresponsiveMainThread", |
+ GetEventLatencyMicros(event_timestamp, now), 1, 10000000, 50); |
} |
} |
} |