| Index: chrome/browser/metrics/chrome_browser_main_extra_parts_metrics.h
|
| diff --git a/chrome/browser/metrics/chrome_browser_main_extra_parts_metrics.h b/chrome/browser/metrics/chrome_browser_main_extra_parts_metrics.h
|
| index 04f3f0e1f3008fa24599288113abd9565c1a82c0..54c7cabb91afb67d15ac1ae1dd7a7eb544f7c2d3 100644
|
| --- a/chrome/browser/metrics/chrome_browser_main_extra_parts_metrics.h
|
| +++ b/chrome/browser/metrics/chrome_browser_main_extra_parts_metrics.h
|
| @@ -9,6 +9,7 @@
|
| #include "base/compiler_specific.h"
|
| #include "base/memory/scoped_ptr.h"
|
| #include "chrome/browser/chrome_browser_main_extra_parts.h"
|
| +#include "ui/gfx/display_observer.h"
|
|
|
| class ChromeBrowserMainParts;
|
|
|
| @@ -16,7 +17,8 @@ namespace chrome {
|
| void AddMetricsExtraParts(ChromeBrowserMainParts* main_parts);
|
| }
|
|
|
| -class ChromeBrowserMainExtraPartsMetrics : public ChromeBrowserMainExtraParts {
|
| +class ChromeBrowserMainExtraPartsMetrics : public ChromeBrowserMainExtraParts,
|
| + public gfx::DisplayObserver {
|
| public:
|
| ChromeBrowserMainExtraPartsMetrics();
|
| virtual ~ChromeBrowserMainExtraPartsMetrics();
|
| @@ -27,6 +29,18 @@ class ChromeBrowserMainExtraPartsMetrics : public ChromeBrowserMainExtraParts {
|
| virtual void PostBrowserStart() override;
|
|
|
| private:
|
| + // DisplayObserver overrides.
|
| + virtual void OnDisplayAdded(const gfx::Display& new_display) override;
|
| + virtual void OnDisplayRemoved(const gfx::Display& old_display) override;
|
| + virtual void OnDisplayMetricsChanged(const gfx::Display& display,
|
| + uint32_t changed_metrics) override;
|
| +
|
| + // If the number of displays has changed, emit a UMA metric.
|
| + void EmitDisplaysChangedMetric();
|
| +
|
| + // A cached value for the number of displays.
|
| + int display_count_;
|
| +
|
| DISALLOW_COPY_AND_ASSIGN(ChromeBrowserMainExtraPartsMetrics);
|
| };
|
|
|
|
|