Index: cc/layers/picture_layer_impl.cc |
diff --git a/cc/layers/picture_layer_impl.cc b/cc/layers/picture_layer_impl.cc |
index 9c7f355799649028f47fb238aa5af563adacc58e..46a0c0e3f2e2e4c3d757805e017c9064b8316bad 100644 |
--- a/cc/layers/picture_layer_impl.cc |
+++ b/cc/layers/picture_layer_impl.cc |
@@ -136,7 +136,7 @@ void PictureLayerImpl::AppendQuads(QuadSink* quad_sink, |
opaque_rect, |
texture_rect, |
texture_size, |
- false, |
+ RGBA_8888, |
quad_content_rect, |
contents_scale, |
draw_direct_to_backbuffer, |
@@ -248,17 +248,17 @@ void PictureLayerImpl::AppendQuads(QuadSink* quad_sink, |
gfx::Rect opaque_rect = iter->opaque_rect(); |
opaque_rect.Intersect(content_rect); |
+ ResourceProvider* resource_provider = |
+ layer_tree_impl()->resource_provider(); |
+ ResourceFormat format = |
+ resource_provider->memory_efficient_texture_format(); |
scoped_ptr<PictureDrawQuad> quad = PictureDrawQuad::Create(); |
quad->SetNew(shared_quad_state, |
geometry_rect, |
opaque_rect, |
texture_rect, |
iter.texture_size(), |
- // TODO(reveman): This assumes the renderer will use |
- // GL_RGBA as format of temporary resource. The need |
- // to swizzle should instead be determined by the |
- // renderer. |
- !PlatformColor::SameComponentOrder(GL_RGBA), |
+ format, |
iter->content_rect(), |
iter->contents_scale(), |
draw_direct_to_backbuffer, |