| Index: ui/ozone/platform/dri/gbm_surfaceless.cc
|
| diff --git a/ui/ozone/platform/dri/gbm_surfaceless.cc b/ui/ozone/platform/dri/gbm_surfaceless.cc
|
| index 50deedafc9f59be02e95f77527987d0e138dfbce..b3748445a369b53d97866b759da0455c26cc4c0d 100644
|
| --- a/ui/ozone/platform/dri/gbm_surfaceless.cc
|
| +++ b/ui/ozone/platform/dri/gbm_surfaceless.cc
|
| @@ -5,13 +5,15 @@
|
| #include "ui/ozone/platform/dri/gbm_surfaceless.h"
|
|
|
| #include "ui/ozone/platform/dri/dri_vsync_provider.h"
|
| +#include "ui/ozone/platform/dri/dri_window_delegate.h"
|
| #include "ui/ozone/platform/dri/gbm_buffer.h"
|
| +#include "ui/ozone/platform/dri/hardware_display_controller.h"
|
|
|
| namespace ui {
|
|
|
| -GbmSurfaceless::GbmSurfaceless(
|
| - const base::WeakPtr<HardwareDisplayController>& controller)
|
| - : controller_(controller) {}
|
| +GbmSurfaceless::GbmSurfaceless(DriWindowDelegate* window_delegate)
|
| + : window_delegate_(window_delegate) {
|
| +}
|
|
|
| GbmSurfaceless::~GbmSurfaceless() {}
|
|
|
| @@ -26,17 +28,18 @@ bool GbmSurfaceless::ResizeNativeWindow(const gfx::Size& viewport_size) {
|
| }
|
|
|
| bool GbmSurfaceless::OnSwapBuffers() {
|
| - if (!controller_)
|
| + HardwareDisplayController* controller = window_delegate_->GetController();
|
| + if (!controller)
|
| return true;
|
|
|
| - bool success = controller_->SchedulePageFlip();
|
| - controller_->WaitForPageFlipEvent();
|
| + bool success = controller->SchedulePageFlip();
|
| + controller->WaitForPageFlipEvent();
|
|
|
| return success;
|
| }
|
|
|
| scoped_ptr<gfx::VSyncProvider> GbmSurfaceless::CreateVSyncProvider() {
|
| - return scoped_ptr<gfx::VSyncProvider>(new DriVSyncProvider(controller_));
|
| + return scoped_ptr<gfx::VSyncProvider>(new DriVSyncProvider(window_delegate_));
|
| }
|
|
|
| } // namespace ui
|
|
|