| Index: ui/ozone/platform/drm/gpu/gbm_surface_factory.cc
|
| diff --git a/ui/ozone/platform/drm/gpu/gbm_surface_factory.cc b/ui/ozone/platform/drm/gpu/gbm_surface_factory.cc
|
| index 060f7be7a90044edaf2b249d583bcdef49796f1b..6c7f0b2ebfd1418e9eaf954d2dc12f61e05bd34e 100644
|
| --- a/ui/ozone/platform/drm/gpu/gbm_surface_factory.cc
|
| +++ b/ui/ozone/platform/drm/gpu/gbm_surface_factory.cc
|
| @@ -9,12 +9,11 @@
|
| #include "base/files/file_path.h"
|
| #include "third_party/khronos/EGL/egl.h"
|
| #include "ui/ozone/common/egl_util.h"
|
| -#include "ui/ozone/platform/drm/gpu/drm_device_manager.h"
|
| -#include "ui/ozone/platform/drm/gpu/drm_window.h"
|
| +#include "ui/ozone/platform/drm/gpu/drm_thread_proxy.h"
|
| +#include "ui/ozone/platform/drm/gpu/drm_window_proxy.h"
|
| #include "ui/ozone/platform/drm/gpu/gbm_buffer.h"
|
| -#include "ui/ozone/platform/drm/gpu/gbm_device.h"
|
| #include "ui/ozone/platform/drm/gpu/gbm_surfaceless.h"
|
| -#include "ui/ozone/platform/drm/gpu/hardware_display_controller.h"
|
| +#include "ui/ozone/platform/drm/gpu/proxy_helpers.h"
|
| #include "ui/ozone/platform/drm/gpu/screen_manager.h"
|
| #include "ui/ozone/public/native_pixmap.h"
|
| #include "ui/ozone/public/surface_ozone_canvas.h"
|
| @@ -22,19 +21,13 @@
|
|
|
| namespace ui {
|
|
|
| -GbmSurfaceFactory::GbmSurfaceFactory()
|
| - : drm_device_manager_(nullptr), screen_manager_(nullptr) {}
|
| +GbmSurfaceFactory::GbmSurfaceFactory(DrmThreadProxy* drm_thread)
|
| + : drm_thread_(drm_thread) {}
|
|
|
| GbmSurfaceFactory::~GbmSurfaceFactory() {
|
| DCHECK(thread_checker_.CalledOnValidThread());
|
| }
|
|
|
| -void GbmSurfaceFactory::InitializeGpu(DrmDeviceManager* drm_device_manager,
|
| - ScreenManager* screen_manager) {
|
| - drm_device_manager_ = drm_device_manager;
|
| - screen_manager_ = screen_manager;
|
| -}
|
| -
|
| void GbmSurfaceFactory::RegisterSurface(gfx::AcceleratedWidget widget,
|
| GbmSurfaceless* surface) {
|
| DCHECK(thread_checker_.CalledOnValidThread());
|
| @@ -106,7 +99,7 @@ GbmSurfaceFactory::CreateSurfacelessEGLSurfaceForWidget(
|
| gfx::AcceleratedWidget widget) {
|
| DCHECK(thread_checker_.CalledOnValidThread());
|
| return make_scoped_ptr(
|
| - new GbmSurfaceless(screen_manager_->GetWindow(widget), this));
|
| + new GbmSurfaceless(drm_thread_->CreateDrmWindowProxy(widget), this));
|
| }
|
|
|
| scoped_refptr<ui::NativePixmap> GbmSurfaceFactory::CreateNativePixmap(
|
| @@ -120,11 +113,8 @@ scoped_refptr<ui::NativePixmap> GbmSurfaceFactory::CreateNativePixmap(
|
| DCHECK(gfx::BufferUsage::SCANOUT == usage);
|
| #endif
|
|
|
| - scoped_refptr<GbmDevice> gbm = GetGbmDevice(widget);
|
| - DCHECK(gbm);
|
| -
|
| scoped_refptr<GbmBuffer> buffer =
|
| - GbmBuffer::CreateBuffer(gbm, format, size, usage);
|
| + drm_thread_->CreateBuffer(widget, size, format, usage);
|
| if (!buffer.get())
|
| return nullptr;
|
|
|
| @@ -135,10 +125,4 @@ scoped_refptr<ui::NativePixmap> GbmSurfaceFactory::CreateNativePixmap(
|
| return pixmap;
|
| }
|
|
|
| -scoped_refptr<GbmDevice> GbmSurfaceFactory::GetGbmDevice(
|
| - gfx::AcceleratedWidget widget) {
|
| - return static_cast<GbmDevice*>(
|
| - drm_device_manager_->GetDrmDevice(widget).get());
|
| -}
|
| -
|
| } // namespace ui
|
|
|