| Index: ui/ozone/demo/surfaceless_gl_renderer.cc
|
| diff --git a/ui/ozone/demo/surfaceless_gl_renderer.cc b/ui/ozone/demo/surfaceless_gl_renderer.cc
|
| index 0623285af36492a97ef39a5ef1df43ded2011ef2..9315cc8c9cee187f0c9420ca1fceb325055ed368 100644
|
| --- a/ui/ozone/demo/surfaceless_gl_renderer.cc
|
| +++ b/ui/ozone/demo/surfaceless_gl_renderer.cc
|
| @@ -8,8 +8,10 @@
|
| #include "ui/gl/gl_bindings.h"
|
| #include "ui/gl/gl_context.h"
|
| #include "ui/gl/gl_image.h"
|
| +#include "ui/gl/gl_image_ozone_native_pixmap.h"
|
| #include "ui/gl/gl_surface.h"
|
| -#include "ui/ozone/gpu/gpu_memory_buffer_factory_ozone_native_pixmap.h"
|
| +#include "ui/ozone/public/ozone_platform.h"
|
| +#include "ui/ozone/public/surface_factory_ozone.h"
|
|
|
| namespace ui {
|
|
|
| @@ -28,24 +30,18 @@ SurfacelessGlRenderer::BufferWrapper::~BufferWrapper() {
|
| }
|
|
|
| bool SurfacelessGlRenderer::BufferWrapper::Initialize(
|
| - GpuMemoryBufferFactoryOzoneNativePixmap* buffer_factory,
|
| gfx::AcceleratedWidget widget,
|
| const gfx::Size& size) {
|
| glGenFramebuffersEXT(1, &gl_fb_);
|
| glGenTextures(1, &gl_tex_);
|
|
|
| - static int buffer_id_generator = 1;
|
| - int id = buffer_id_generator++;
|
| -
|
| - buffer_factory->CreateGpuMemoryBuffer(
|
| - id, size, gfx::GpuMemoryBuffer::RGBX_8888, gfx::GpuMemoryBuffer::SCANOUT,
|
| - 1, widget);
|
| - image_ = buffer_factory->CreateImageForGpuMemoryBuffer(
|
| - id, size, gfx::GpuMemoryBuffer::RGBX_8888, GL_RGB, 1);
|
| - // Now that we have a reference to |image_|; we can just remove it from the
|
| - // factory mapping.
|
| - buffer_factory->DestroyGpuMemoryBuffer(id, widget);
|
| -
|
| + scoped_refptr<NativePixmap> pixmap =
|
| + OzonePlatform::GetInstance()
|
| + ->GetSurfaceFactoryOzone()
|
| + ->CreateNativePixmap(widget, size, SurfaceFactoryOzone::RGBX_8888,
|
| + SurfaceFactoryOzone::SCANOUT);
|
| + image_ = gfx::GLImageOzoneNativePixmap::Create(
|
| + pixmap, size, gfx::GpuMemoryBuffer::RGBX_8888, GL_RGB);
|
| if (!image_) {
|
| LOG(ERROR) << "Failed to create GL image";
|
| return false;
|
| @@ -78,13 +74,9 @@ void SurfacelessGlRenderer::BufferWrapper::SchedulePlane() {
|
| gfx::Rect(size_), gfx::RectF(0, 0, 1, 1));
|
| }
|
|
|
| -SurfacelessGlRenderer::SurfacelessGlRenderer(
|
| - gfx::AcceleratedWidget widget,
|
| - const gfx::Size& size,
|
| - GpuMemoryBufferFactoryOzoneNativePixmap* buffer_factory)
|
| - : GlRenderer(widget, size),
|
| - buffer_factory_(buffer_factory),
|
| - weak_ptr_factory_(this) {}
|
| +SurfacelessGlRenderer::SurfacelessGlRenderer(gfx::AcceleratedWidget widget,
|
| + const gfx::Size& size)
|
| + : GlRenderer(widget, size), weak_ptr_factory_(this) {}
|
|
|
| SurfacelessGlRenderer::~SurfacelessGlRenderer() {
|
| // Need to make current when deleting the framebuffer resources allocated in
|
| @@ -97,7 +89,7 @@ bool SurfacelessGlRenderer::Initialize() {
|
| return false;
|
|
|
| for (size_t i = 0; i < arraysize(buffers_); ++i)
|
| - if (!buffers_[i].Initialize(buffer_factory_, widget_, size_))
|
| + if (!buffers_[i].Initialize(widget_, size_))
|
| return false;
|
|
|
| PostRenderFrameTask(gfx::SwapResult::SWAP_ACK);
|
|
|