Chromium Code Reviews| Index: cc/output/gl_renderer.cc |
| diff --git a/cc/output/gl_renderer.cc b/cc/output/gl_renderer.cc |
| index 3296ff6796b9d1879cbaa17790b21d18ba1bf437..e91c21716892d1557cfa1c1482555d87b19fc154 100644 |
| --- a/cc/output/gl_renderer.cc |
| +++ b/cc/output/gl_renderer.cc |
| @@ -3518,16 +3518,19 @@ void GLRenderer::ScheduleOverlays(DrawingFrame* frame) { |
| if (overlay.plane_z_order == 0) |
| continue; |
| - pending_overlay_resources_.push_back( |
| - make_scoped_ptr(new ResourceProvider::ScopedReadLockGL( |
| - resource_provider_, overlay.resource_id))); |
| + unsigned texture_id = 0; |
| + if (overlay.use_output_surface_for_resource) { |
| + texture_id = output_surface_->GetOverlayTextureId(); |
|
alexst (slow to review)
2015/08/25 18:49:38
DCHECK that this is not 0 because the surface has
ccameron
2015/08/26 21:36:13
Done.
|
| + } else { |
| + pending_overlay_resources_.push_back( |
| + make_scoped_ptr(new ResourceProvider::ScopedReadLockGL( |
| + resource_provider_, overlay.resource_id))); |
| + texture_id = pending_overlay_resources_.back()->texture_id(); |
| + } |
| context_support_->ScheduleOverlayPlane( |
| - overlay.plane_z_order, |
| - overlay.transform, |
| - pending_overlay_resources_.back()->texture_id(), |
| - ToNearestRect(overlay.display_rect), |
| - overlay.uv_rect); |
| + overlay.plane_z_order, overlay.transform, texture_id, |
| + ToNearestRect(overlay.display_rect), overlay.uv_rect); |
| } |
| } |