summaryrefslogtreecommitdiffstats
path: root/cc/output/gl_renderer.cc
diff options
context:
space:
mode:
authordanakj <danakj@chromium.org>2015-02-18 17:04:08 -0800
committerCommit bot <commit-bot@chromium.org>2015-02-19 01:04:52 +0000
commit66e4d216568639ad909b8477a9640a8e83369538 (patch)
tree626e4619be619479caa087e4218c0bec04b50bdd /cc/output/gl_renderer.cc
parent8c5a2c5f3c9efbc0c5810e8269d788210175a6af (diff)
downloadchromium_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.cc51
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) {