| Index: mojo/skia/ganesh_texture_surface.cc
|
| diff --git a/mojo/skia/ganesh_surface.cc b/mojo/skia/ganesh_texture_surface.cc
|
| similarity index 57%
|
| rename from mojo/skia/ganesh_surface.cc
|
| rename to mojo/skia/ganesh_texture_surface.cc
|
| index 11fe502cb82f7587a3a82dc6240ac9925c17bf93..033a5a07ac3f0199ea85251cc7468f4083b6d9c2 100644
|
| --- a/mojo/skia/ganesh_surface.cc
|
| +++ b/mojo/skia/ganesh_texture_surface.cc
|
| @@ -2,13 +2,20 @@
|
| // Use of this source code is governed by a BSD-style license that can be
|
| // found in the LICENSE file.
|
|
|
| -#include "mojo/skia/ganesh_surface.h"
|
| +#include "base/logging.h"
|
| +#include "mojo/skia/ganesh_texture_surface.h"
|
|
|
| namespace mojo {
|
|
|
| -GaneshSurface::GaneshSurface(GaneshContext* context,
|
| - scoped_ptr<GLTexture> texture)
|
| - : texture_(texture.Pass()) {
|
| +GaneshTextureSurface::GaneshTextureSurface(GaneshContext* context,
|
| + std::unique_ptr<GLTexture>&& texture)
|
| + : texture_(std::move(texture)) {
|
| + DCHECK(context);
|
| + DCHECK(texture_);
|
| + DCHECK(texture_->texture_id());
|
| + DCHECK(texture_->size().width > 0);
|
| + DCHECK(texture_->size().height > 0);
|
| +
|
| GrBackendTextureDesc desc;
|
| desc.fFlags = kRenderTarget_GrBackendTextureFlag;
|
| desc.fWidth = texture_->size().width;
|
| @@ -16,22 +23,21 @@ GaneshSurface::GaneshSurface(GaneshContext* context,
|
| desc.fConfig = kSkia8888_GrPixelConfig;
|
| desc.fOrigin = kTopLeft_GrSurfaceOrigin;
|
| desc.fTextureHandle = texture_->texture_id();
|
| - DCHECK(texture_->texture_id());
|
|
|
| - auto gr_texture = skia::AdoptRef(
|
| + skia::RefPtr<GrTexture> gr_texture = skia::AdoptRef(
|
| context->gr()->textureProvider()->wrapBackendTexture(desc));
|
| DCHECK(gr_texture);
|
| +
|
| surface_ = skia::AdoptRef(
|
| SkSurface::NewRenderTargetDirect(gr_texture->asRenderTarget()));
|
| DCHECK(surface_);
|
| }
|
|
|
| -GaneshSurface::~GaneshSurface() {
|
| -}
|
| +GaneshTextureSurface::~GaneshTextureSurface() {}
|
|
|
| -scoped_ptr<GLTexture> GaneshSurface::TakeTexture() {
|
| +std::unique_ptr<GLTexture> GaneshTextureSurface::TakeTexture() {
|
| surface_.clear();
|
| - return texture_.Pass();
|
| + return std::move(texture_);
|
| }
|
|
|
| } // namespace mojo
|
|
|