diff options
author | danakj <danakj@chromium.org> | 2015-02-18 17:04:08 -0800 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2015-02-19 01:04:52 +0000 |
commit | 66e4d216568639ad909b8477a9640a8e83369538 (patch) | |
tree | 626e4619be619479caa087e4218c0bec04b50bdd /cc/output/gl_renderer.cc | |
parent | 8c5a2c5f3c9efbc0c5810e8269d788210175a6af (diff) | |
download | chromium_src-66e4d216568639ad909b8477a9640a8e83369538.zip chromium_src-66e4d216568639ad909b8477a9640a8e83369538.tar.gz chromium_src-66e4d216568639ad909b8477a9640a8e83369538.tar.bz2 |
cc: Remove unused PictureDrawQuad support from GLRenderer.
This eliminates one use of TextureUploader via
ResourceProvider::SetPixels. The PICTURE_PILE_MODE is renamed to
OOM_MODE which more accurately describes what it is, and OOM tiles are
displayed in red again instead of gray (something that changed with
impl-side-painting).
R=enne
BUG=454575
Review URL: https://codereview.chromium.org/941433002
Cr-Commit-Position: refs/heads/master@{#316940}
Diffstat (limited to 'cc/output/gl_renderer.cc')
-rw-r--r-- | cc/output/gl_renderer.cc | 51 |
1 files changed, 2 insertions, 49 deletions
diff --git a/cc/output/gl_renderer.cc b/cc/output/gl_renderer.cc index a394a1a..e2b053f 100644 --- a/cc/output/gl_renderer.cc +++ b/cc/output/gl_renderer.cc @@ -514,7 +514,8 @@ void GLRenderer::DoDrawQuad(DrawingFrame* frame, const DrawQuad* quad) { DrawIOSurfaceQuad(frame, IOSurfaceDrawQuad::MaterialCast(quad)); break; case DrawQuad::PICTURE_CONTENT: - DrawPictureQuad(frame, PictureDrawQuad::MaterialCast(quad)); + // PictureDrawQuad should only be used for resourceless software draws. + NOTREACHED(); break; case DrawQuad::RENDER_PASS: DrawRenderPassQuad(frame, RenderPassDrawQuad::MaterialCast(quad)); @@ -1978,54 +1979,6 @@ void GLRenderer::DrawStreamVideoQuad(const DrawingFrame* frame, program->vertex_shader().matrix_location()); } -void GLRenderer::DrawPictureQuad(const DrawingFrame* frame, - const PictureDrawQuad* quad) { - if (on_demand_tile_raster_bitmap_.width() != quad->texture_size.width() || - on_demand_tile_raster_bitmap_.height() != quad->texture_size.height()) { - on_demand_tile_raster_bitmap_.allocN32Pixels(quad->texture_size.width(), - quad->texture_size.height()); - - if (on_demand_tile_raster_resource_id_) - resource_provider_->DeleteResource(on_demand_tile_raster_resource_id_); - - on_demand_tile_raster_resource_id_ = resource_provider_->CreateGLTexture( - quad->texture_size, - GL_TEXTURE_2D, - GL_TEXTURE_POOL_UNMANAGED_CHROMIUM, - GL_CLAMP_TO_EDGE, - ResourceProvider::TextureHintImmutable, - quad->texture_format); - } - - SkCanvas canvas(on_demand_tile_raster_bitmap_); - quad->raster_source->PlaybackToCanvas(&canvas, quad->content_rect, - quad->contents_scale); - - uint8_t* bitmap_pixels = NULL; - SkBitmap on_demand_tile_raster_bitmap_dest; - SkColorType colorType = ResourceFormatToSkColorType(quad->texture_format); - if (on_demand_tile_raster_bitmap_.colorType() != colorType) { - on_demand_tile_raster_bitmap_.copyTo(&on_demand_tile_raster_bitmap_dest, - colorType); - // TODO(kaanb): The GL pipeline assumes a 4-byte alignment for the - // bitmap data. This check will be removed once crbug.com/293728 is fixed. - CHECK_EQ(0u, on_demand_tile_raster_bitmap_dest.rowBytes() % 4); - bitmap_pixels = reinterpret_cast<uint8_t*>( - on_demand_tile_raster_bitmap_dest.getPixels()); - } else { - bitmap_pixels = - reinterpret_cast<uint8_t*>(on_demand_tile_raster_bitmap_.getPixels()); - } - - resource_provider_->SetPixels(on_demand_tile_raster_resource_id_, - bitmap_pixels, - gfx::Rect(quad->texture_size), - gfx::Rect(quad->texture_size), - gfx::Vector2d()); - - DrawContentQuad(frame, quad, on_demand_tile_raster_resource_id_); -} - struct TextureProgramBinding { template <class Program> void Set(Program* program) { |