Split screen info metrics out of GpuMetricsProvider
GpuMetricsProvider has two functions:
(1) Provide GPU metrics (dependent on //content)
(2) Provide screen info metrics (independent of //content)
This CL splits (2) into ScreenInfoMetricsProvider so that the iOS port
can depend cleanly on it.
BUG=527718
TBR=halliwell, jochen
Review URL: https://codereview.chromium.org/1380953004
Cr-Commit-Position: refs/heads/master@{#353510}
diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
index 36990e6..b85eb2d5 100644
--- a/chrome/browser/BUILD.gn
+++ b/chrome/browser/BUILD.gn
@@ -133,6 +133,7 @@
"//components/metrics:net",
"//components/metrics:profiler",
"//components/metrics/proto:proto",
+ "//components/metrics:ui",
"//components/mime_util",
"//components/navigation_metrics",
"//components/network_time",
diff --git a/chrome/browser/metrics/chrome_metrics_service_client.cc b/chrome/browser/metrics/chrome_metrics_service_client.cc
index 67dec95..cb43094bb 100644
--- a/chrome/browser/metrics/chrome_metrics_service_client.cc
+++ b/chrome/browser/metrics/chrome_metrics_service_client.cc
@@ -40,6 +40,7 @@
#include "components/metrics/profiler/profiler_metrics_provider.h"
#include "components/metrics/profiler/tracking_synchronizer.h"
#include "components/metrics/stability_metrics_helper.h"
+#include "components/metrics/ui/screen_info_metrics_provider.h"
#include "components/metrics/url_constants.h"
#include "components/omnibox/browser/omnibox_metrics_provider.h"
#include "components/variations/variations_associated_data.h"
@@ -321,6 +322,9 @@
g_browser_process->local_state())));
metrics_service_->RegisterMetricsProvider(
scoped_ptr<metrics::MetricsProvider>(new metrics::GPUMetricsProvider));
+ metrics_service_->RegisterMetricsProvider(
+ scoped_ptr<metrics::MetricsProvider>(
+ new metrics::ScreenInfoMetricsProvider));
drive_metrics_provider_ = new metrics::DriveMetricsProvider(
content::BrowserThread::GetMessageLoopProxyForThread(