Index: ui/ozone/platform/dri/screen_manager.h |
diff --git a/ui/ozone/platform/dri/screen_manager.h b/ui/ozone/platform/dri/screen_manager.h |
index 1dc1e52ea24c5a8e043285ee75782db6adf6ff36..46cbd66133f48a8727fb1bbf212dc758f5191eb4 100644 |
--- a/ui/ozone/platform/dri/screen_manager.h |
+++ b/ui/ozone/platform/dri/screen_manager.h |
@@ -5,11 +5,9 @@ |
#ifndef UI_OZONE_PLATFORM_DRI_SCREEN_MANAGER_H_ |
#define UI_OZONE_PLATFORM_DRI_SCREEN_MANAGER_H_ |
-#include <map> |
- |
#include "base/macros.h" |
+#include "base/memory/scoped_vector.h" |
#include "base/memory/weak_ptr.h" |
-#include "ui/gfx/native_widget_types.h" |
#include "ui/ozone/platform/dri/hardware_display_controller.h" |
typedef struct _drmModeModeInfo drmModeModeInfo; |
@@ -47,14 +45,6 @@ class ScreenManager { |
// may still be connected, so this does not remove the controller. |
bool DisableDisplayController(uint32_t crtc); |
- // Returns a reference to the display controller associated with |widget|. |
- // This returns a weak reference since the display controller may be destroyed |
- // at any point in time, but the changes are propagated to the compositor much |
- // later (Compositor owns SurfaceOzone*, which is responsible for updating the |
- // display surface). |
- base::WeakPtr<HardwareDisplayController> GetDisplayController( |
- gfx::AcceleratedWidget widget); |
- |
// Returns a reference to the display controller configured to display within |
// |bounds|. |
// This returns a weak reference since the display controller may be destroyed |
@@ -65,22 +55,15 @@ class ScreenManager { |
const gfx::Rect& bounds); |
private: |
- typedef std::map<gfx::AcceleratedWidget, HardwareDisplayController*> |
- HardwareDisplayControllerMap; |
+ typedef ScopedVector<HardwareDisplayController> HardwareDisplayControllers; |
// Returns an iterator into |controllers_| for the controller identified by |
// (|crtc|, |connector|). |
- HardwareDisplayControllerMap::iterator FindDisplayController( |
- uint32_t crtc); |
+ HardwareDisplayControllers::iterator FindDisplayController(uint32_t crtc); |
// Returns an iterator into |controllers_| for the controller located at |
// |origin|. |
- HardwareDisplayControllerMap::iterator FindDisplayControllerByOrigin( |
- const gfx::Point& origin); |
- |
- // Returns an iterator into |controllers_| for the controller located within |
- // |bounds|. |
- HardwareDisplayControllerMap::iterator FindActiveDisplayControllerByLocation( |
+ HardwareDisplayControllers::iterator FindActiveDisplayControllerByLocation( |
const gfx::Rect& bounds); |
// Perform modesetting in |controller| using |origin| and |mode|. |
@@ -91,11 +74,10 @@ class ScreenManager { |
// Tries to set the controller identified by (|crtc|, |connector|) to mirror |
// those in |mirror|. |original| is an iterator to the HDC where the |
// controller is currently present. |
- bool HandleMirrorMode( |
- HardwareDisplayControllerMap::iterator original, |
- HardwareDisplayControllerMap::iterator mirror, |
- uint32_t crtc, |
- uint32_t connector); |
+ bool HandleMirrorMode(HardwareDisplayControllers::iterator original, |
+ HardwareDisplayControllers::iterator mirror, |
+ uint32_t crtc, |
+ uint32_t connector); |
// On non CrOS builds there is no display configurator to look-up available |
// displays and initialize the HDCs. In such cases this is called internally |
@@ -104,9 +86,8 @@ class ScreenManager { |
DriWrapper* dri_; // Not owned. |
ScanoutBufferGenerator* buffer_generator_; // Not owned. |
- // Mapping between an accelerated widget and an active display. |
- HardwareDisplayControllerMap controllers_; |
- gfx::AcceleratedWidget last_added_widget_; |
+ // List of display controllers (active and disabled). |
+ HardwareDisplayControllers controllers_; |
DISALLOW_COPY_AND_ASSIGN(ScreenManager); |
}; |