Index: chrome/browser/metrics/chrome_browser_main_extra_parts_metrics_mac.mm |
diff --git a/chrome/browser/metrics/chrome_browser_main_extra_parts_metrics_mac.mm b/chrome/browser/metrics/chrome_browser_main_extra_parts_metrics_mac.mm |
new file mode 100644 |
index 0000000000000000000000000000000000000000..2ddd8d9da921db4b7cbde3259ace1184c2cfabc6 |
--- /dev/null |
+++ b/chrome/browser/metrics/chrome_browser_main_extra_parts_metrics_mac.mm |
@@ -0,0 +1,42 @@ |
+// Copyright 2014 The Chromium Authors. All rights reserved. |
+// Use of this source code is governed by a BSD-style license that can be |
+// found in the LICENSE file. |
+ |
+#include "chrome/browser/metrics/chrome_browser_main_extra_parts_metrics_mac.h" |
+ |
+#include "base/metrics/histogram.h" |
+#include "ui/gfx/screen.h" |
+ |
+ChromeBrowserMainExtraPartsMetricsMac::ChromeBrowserMainExtraPartsMetricsMac() { |
+ displayCount_ = gfx::Screen::GetNativeScreen()->GetNumDisplays(); |
+ UMA_HISTOGRAM_COUNTS_100("OSX.DisplayCount.StartUp", displayCount_); |
+ gfx::Screen::GetNativeScreen()->AddObserver(this); |
+} |
+ |
+ChromeBrowserMainExtraPartsMetricsMac:: |
+ ~ChromeBrowserMainExtraPartsMetricsMac() { |
+ gfx::Screen::GetNativeScreen()->RemoveObserver(this); |
+} |
+ |
+void ChromeBrowserMainExtraPartsMetricsMac::OnDisplayAdded( |
+ const gfx::Display& new_display) { |
+ EmitDisplaysChangedMetric(); |
+} |
+ |
+void ChromeBrowserMainExtraPartsMetricsMac::OnDisplayRemoved( |
+ const gfx::Display& old_display) { |
+ EmitDisplaysChangedMetric(); |
+} |
+ |
+void ChromeBrowserMainExtraPartsMetricsMac::OnDisplayMetricsChanged( |
+ const gfx::Display& display, |
+ uint32_t changed_metrics) { |
+} |
+ |
+void ChromeBrowserMainExtraPartsMetricsMac::EmitDisplaysChangedMetric() { |
+ int displayCount = gfx::Screen::GetNativeScreen()->GetNumDisplays(); |
Robert Sesek
2014/10/10 15:17:07
naming: display_count
erikchen
2014/10/10 17:01:54
Done.
|
+ if (displayCount != displayCount_) { |
+ displayCount_ = displayCount; |
+ UMA_HISTOGRAM_COUNTS_100("OSX.DisplayCount.Changed", displayCount_); |
+ } |
+} |