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 64c01a71f77087d0d41986768434f9542925975b..f859ccff1083bc9bbce388d450ed3f2ebafac087 100644 |
--- a/chrome/browser/metrics/chrome_browser_main_extra_parts_metrics.cc |
+++ b/chrome/browser/metrics/chrome_browser_main_extra_parts_metrics.cc |
@@ -24,6 +24,7 @@ |
#include "ui/base/touch/touch_device.h" |
#include "ui/base/ui_base_switches.h" |
#include "ui/events/event_switches.h" |
+#include "ui/gfx/screen.h" |
#if defined(OS_LINUX) && !defined(OS_CHROMEOS) |
#include <gnu/libc-version.h> |
@@ -219,9 +220,13 @@ void RecordTouchEventState() { |
} // namespace |
ChromeBrowserMainExtraPartsMetrics::ChromeBrowserMainExtraPartsMetrics() { |
+ display_count_ = gfx::Screen::GetNativeScreen()->GetNumDisplays(); |
+ UMA_HISTOGRAM_COUNTS_100("DisplayCount.StartUp", display_count_); |
Ilya Sherman
2014/10/14 06:34:22
nit: Please name this "Display.Count.StartUp" (or,
erikchen
2014/10/14 23:09:38
Went with "Hardware.Display.Count.OnStartup".
|
+ gfx::Screen::GetNativeScreen()->AddObserver(this); |
} |
ChromeBrowserMainExtraPartsMetrics::~ChromeBrowserMainExtraPartsMetrics() { |
+ gfx::Screen::GetNativeScreen()->RemoveObserver(this); |
} |
void ChromeBrowserMainExtraPartsMetrics::PreProfileInit() { |
@@ -250,6 +255,29 @@ void ChromeBrowserMainExtraPartsMetrics::PostBrowserStart() { |
base::TimeDelta::FromSeconds(kStartupMetricsGatheringDelaySeconds)); |
} |
+void ChromeBrowserMainExtraPartsMetrics::OnDisplayAdded( |
+ const gfx::Display& new_display) { |
+ EmitDisplaysChangedMetric(); |
+} |
+ |
+void ChromeBrowserMainExtraPartsMetrics::OnDisplayRemoved( |
+ const gfx::Display& old_display) { |
+ EmitDisplaysChangedMetric(); |
+} |
+ |
+void ChromeBrowserMainExtraPartsMetrics::OnDisplayMetricsChanged( |
+ const gfx::Display& display, |
+ uint32_t changed_metrics) { |
+} |
+ |
+void ChromeBrowserMainExtraPartsMetrics::EmitDisplaysChangedMetric() { |
+ int display_count = gfx::Screen::GetNativeScreen()->GetNumDisplays(); |
+ if (display_count != display_count_) { |
+ display_count_ = display_count; |
+ UMA_HISTOGRAM_COUNTS_100("DisplayCount.Changed", display_count_); |
Ilya Sherman
2014/10/14 06:34:22
nit: And correspondingly, please name this "Displa
erikchen
2014/10/14 23:09:38
Went with "Hardware.Display.Count.OnChange".
|
+ } |
+} |
+ |
namespace chrome { |
void AddMetricsExtraParts(ChromeBrowserMainParts* main_parts) { |