Index: ui/ozone/platform/dri/screen_manager.cc |
diff --git a/ui/ozone/platform/dri/screen_manager.cc b/ui/ozone/platform/dri/screen_manager.cc |
index ada162daeb0238aabd3fccd78ab1780ab209c4a1..8085a3e1f4c47a151965373134a8d4c20f009c81 100644 |
--- a/ui/ozone/platform/dri/screen_manager.cc |
+++ b/ui/ozone/platform/dri/screen_manager.cc |
@@ -11,13 +11,13 @@ |
#include "ui/gfx/geometry/size.h" |
#include "ui/ozone/platform/dri/dri_util.h" |
#include "ui/ozone/platform/dri/hardware_display_controller.h" |
-#include "ui/ozone/platform/dri/scanout_surface.h" |
+#include "ui/ozone/platform/dri/scanout_buffer.h" |
namespace ui { |
ScreenManager::ScreenManager( |
- DriWrapper* dri, ScanoutSurfaceGenerator* surface_generator) |
- : dri_(dri), surface_generator_(surface_generator), last_added_widget_(0) { |
+ DriWrapper* dri, ScanoutBufferGenerator* buffer_generator) |
+ : dri_(dri), buffer_generator_(buffer_generator), last_added_widget_(0) { |
} |
ScreenManager::~ScreenManager() { |
@@ -45,7 +45,6 @@ bool ScreenManager::ConfigureDisplayController(uint32_t crtc, |
return it->second->Enable(); |
controller = it->second; |
- controller->UnbindSurfaceFromController(); |
} |
if (it == controllers_.end()) { |
@@ -54,19 +53,16 @@ bool ScreenManager::ConfigureDisplayController(uint32_t crtc, |
} |
// Create a surface suitable for the current controller. |
- scoped_ptr<ScanoutSurface> surface( |
- surface_generator_->Create(gfx::Size(mode.hdisplay, mode.vdisplay))); |
+ scoped_refptr<ScanoutBuffer> buffer = |
+ buffer_generator_->Create(gfx::Size(mode.hdisplay, mode.vdisplay)); |
- if (!surface->Initialize()) { |
- LOG(ERROR) << "Failed to initialize surface"; |
+ if (!buffer) { |
+ LOG(ERROR) << "Failed to create scanout buffer"; |
return false; |
} |
- // Bind the surface to the controller. This will register the backing buffers |
- // with the hardware CRTC such that we can show the buffers and performs the |
- // initial modeset. The controller takes ownership of the surface. |
- if (!controller->BindSurfaceToController(surface.Pass(), mode)) { |
- LOG(ERROR) << "Failed to bind surface to controller"; |
+ if (!controller->Modeset(OverlayPlane(buffer), mode)) { |
+ LOG(ERROR) << "Failed to modeset controller"; |
return false; |
} |