Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(12)

Unified Diff: ui/ozone/platform/dri/gbm_surfaceless.cc

Issue 469343003: [Ozone-GBM] Pumb DriWindowDelegate throughout the platform (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Rebased Created 6 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
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

Powered by Google App Engine
This is Rietveld 408576698