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

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

Issue 1984173002: Log First User Interaction in Page Load Metrics (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Plumbing RWH latency tracker instead of DidGetUserInteraction API Created 4 years, 7 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/render_widget_host_latency_tracker.cc
diff --git a/content/browser/renderer_host/input/render_widget_host_latency_tracker.cc b/content/browser/renderer_host/input/render_widget_host_latency_tracker.cc
index b0ba89f77e5ae0e26ce0dd96ebd2b16d9a6150d8..1baa04c1f0ed020805226614ab1709947c292212 100644
--- a/content/browser/renderer_host/input/render_widget_host_latency_tracker.cc
+++ b/content/browser/renderer_host/input/render_widget_host_latency_tracker.cc
@@ -305,6 +305,11 @@ void RenderWidgetHostLatencyTracker::OnInputEvent(
const blink::WebInputEvent& event,
LatencyInfo* latency) {
DCHECK(latency);
+
+ for (size_t i = 0; i < input_event_callbacks_.size(); ++i) {
+ input_event_callbacks_[i].Run(event);
+ }
+
if (latency->FindLatency(ui::INPUT_EVENT_LATENCY_BEGIN_RWH_COMPONENT,
latency_component_id_, NULL)) {
return;
@@ -470,4 +475,19 @@ void RenderWidgetHostLatencyTracker::OnFrameSwapped(
latency);
}
+void RenderWidgetHostLatencyTracker::AddInputEventCallback(
+ const InputEventCallback& callback) {
+ input_event_callbacks_.push_back(callback);
+}
+
+void RenderWidgetHostLatencyTracker::RemoveInputEventCallback(
+ const InputEventCallback& callback) {
+ for (size_t i = 0; i < input_event_callbacks_.size(); ++i) {
+ if (input_event_callbacks_[i].Equals(callback)) {
+ input_event_callbacks_.erase(input_event_callbacks_.begin() + i);
+ return;
+ }
+ }
+}
+
} // namespace content

Powered by Google App Engine
This is Rietveld 408576698