Index: chrome/browser/metrics/chrome_browser_main_extra_parts_metrics.cc |
diff --git a/chrome/browser/metrics/chrome_browser_main_extra_parts_metrics.cc b/chrome/browser/metrics/chrome_browser_main_extra_parts_metrics.cc |
index 5ca78d2c878dadfd35ef372b82e66b50e6ab46ac..3d5e9e703417a711eb37449a73e04f3f89eb0051 100644 |
--- a/chrome/browser/metrics/chrome_browser_main_extra_parts_metrics.cc |
+++ b/chrome/browser/metrics/chrome_browser_main_extra_parts_metrics.cc |
@@ -264,6 +264,14 @@ void ChromeBrowserMainExtraPartsMetrics::PostBrowserStart() { |
UMA_HISTOGRAM_COUNTS_100("Hardware.Display.Count.OnStartup", display_count_); |
gfx::Screen::GetNativeScreen()->AddObserver(this); |
is_screen_observer_ = true; |
+ |
+#if !defined(OS_ANDROID) |
+ if (FirstWebContentsProfiler::ShouldCollectMetrics()) { |
+ first_web_contents_profiler_ = |
+ FirstWebContentsProfiler::CreateProfilerForFirstWebContents(this) |
+ .Pass(); |
+ } |
+#endif // !defined(OS_ANDROID) |
} |
void ChromeBrowserMainExtraPartsMetrics::OnDisplayAdded( |
@@ -281,6 +289,10 @@ void ChromeBrowserMainExtraPartsMetrics::OnDisplayMetricsChanged( |
uint32_t changed_metrics) { |
} |
+void ChromeBrowserMainExtraPartsMetrics::ProfilerFinishedCollectingMetrics() { |
+ first_web_contents_profiler_.reset(); |
+} |
+ |
void ChromeBrowserMainExtraPartsMetrics::EmitDisplaysChangedMetric() { |
int display_count = gfx::Screen::GetNativeScreen()->GetNumDisplays(); |
if (display_count != display_count_) { |