Index: ui/display/display_observer.h |
diff --git a/ui/display/display_observer.h b/ui/display/display_observer.h |
index 9d839ce08cfc226e100fa962d5199264969814f9..5c6a53d74e3e413168691ff8c66745e4424bdfa1 100644 |
--- a/ui/display/display_observer.h |
+++ b/ui/display/display_observer.h |
@@ -1,18 +1,50 @@ |
-// Copyright 2016 The Chromium Authors. All rights reserved. |
+// Copyright (c) 2012 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. |
#ifndef UI_DISPLAY_DISPLAY_OBSERVER_H_ |
#define UI_DISPLAY_DISPLAY_OBSERVER_H_ |
-#include "ui/gfx/display_observer.h" |
+#include <stdint.h> |
+ |
+#include "ui/display/display_export.h" |
+ |
+namespace gfx { |
+class Display; |
+} |
namespace display { |
using Display = gfx::Display; |
-// TODO(oshima): move the gfx::DisplayObserver to display::DisplayObserver. |
-using DisplayObserver = gfx::DisplayObserver; |
+// Observers for display configuration changes. |
+// TODO(oshima): consolidate |WorkAreaWatcherObserver| and |
+// |DisplaySettingsProvier|. crbug.com/122863. |
+class DISPLAY_EXPORT DisplayObserver { |
+ public: |
+ enum DisplayMetric { |
+ DISPLAY_METRIC_NONE = 0, |
+ DISPLAY_METRIC_BOUNDS = 1 << 0, |
+ DISPLAY_METRIC_WORK_AREA = 1 << 1, |
+ DISPLAY_METRIC_DEVICE_SCALE_FACTOR = 1 << 2, |
+ DISPLAY_METRIC_ROTATION = 1 << 3, |
+ DISPLAY_METRIC_PRIMARY = 1 << 4, |
+ }; |
+ |
+ // Called when |new_display| has been added. |
+ virtual void OnDisplayAdded(const Display& new_display) = 0; |
+ |
+ // Called when |old_display| has been removed. |
+ virtual void OnDisplayRemoved(const Display& old_display) = 0; |
+ |
+ // Called when a |display| has one or more metrics changed. |changed_metrics| |
+ // will contain the information about the change, see |DisplayMetric|. |
+ virtual void OnDisplayMetricsChanged(const Display& display, |
+ uint32_t changed_metrics) = 0; |
+ |
+ protected: |
+ virtual ~DisplayObserver(); |
+}; |
-} // display |
+} // namespace display |
#endif // UI_DISPLAY_DISPLAY_OBSERVER_H_ |