| 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 efa09797c57a68a777ad796735d07ca71e30b0ce..7e327f87bd7ebab0d8b375fe9316b39e87fc2a7c 100644
|
| --- a/ui/ozone/platform/dri/gbm_surfaceless.cc
|
| +++ b/ui/ozone/platform/dri/gbm_surfaceless.cc
|
| @@ -4,6 +4,8 @@
|
|
|
| #include "ui/ozone/platform/dri/gbm_surfaceless.h"
|
|
|
| +#include "base/bind.h"
|
| +#include "base/bind_helpers.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"
|
| @@ -27,8 +29,12 @@ bool GbmSurfaceless::ResizeNativeWindow(const gfx::Size& viewport_size) {
|
| }
|
|
|
| bool GbmSurfaceless::OnSwapBuffers() {
|
| - NOTREACHED();
|
| - return false;
|
| + HardwareDisplayController* controller = window_delegate_->GetController();
|
| + if (!controller)
|
| + return true;
|
| +
|
| + return controller->SchedulePageFlip(true /* is_sync */,
|
| + base::Bind(&base::DoNothing));
|
| }
|
|
|
| bool GbmSurfaceless::OnSwapBuffersAsync(
|
| @@ -39,7 +45,7 @@ bool GbmSurfaceless::OnSwapBuffersAsync(
|
| return true;
|
| }
|
|
|
| - return controller->SchedulePageFlip(callback);
|
| + return controller->SchedulePageFlip(false /* is_sync */, callback);
|
| }
|
|
|
| scoped_ptr<gfx::VSyncProvider> GbmSurfaceless::CreateVSyncProvider() {
|
|
|