| Index: cc/layers/io_surface_layer_impl.cc
|
| diff --git a/cc/layers/io_surface_layer_impl.cc b/cc/layers/io_surface_layer_impl.cc
|
| index e72eefdb9f5a37ca5d79efa4ed02e2890ee089d2..9b35830b73a6131fe7b3eecee849c62b092a2a8a 100644
|
| --- a/cc/layers/io_surface_layer_impl.cc
|
| +++ b/cc/layers/io_surface_layer_impl.cc
|
| @@ -5,11 +5,11 @@
|
| #include "cc/layers/io_surface_layer_impl.h"
|
|
|
| #include "base/strings/stringprintf.h"
|
| -#include "cc/layers/quad_sink.h"
|
| #include "cc/output/gl_renderer.h" // For the GLC() macro.
|
| #include "cc/output/output_surface.h"
|
| #include "cc/quads/io_surface_draw_quad.h"
|
| #include "cc/trees/layer_tree_impl.h"
|
| +#include "cc/trees/occlusion_tracker.h"
|
| #include "gpu/GLES2/gl2extchromium.h"
|
| #include "gpu/command_buffer/client/gles2_interface.h"
|
| #include "third_party/khronos/GLES2/gl2.h"
|
| @@ -64,17 +64,22 @@ bool IOSurfaceLayerImpl::WillDraw(DrawMode draw_mode,
|
| return LayerImpl::WillDraw(draw_mode, resource_provider);
|
| }
|
|
|
| -void IOSurfaceLayerImpl::AppendQuads(QuadSink* quad_sink,
|
| - AppendQuadsData* append_quads_data) {
|
| - SharedQuadState* shared_quad_state = quad_sink->CreateSharedQuadState();
|
| +void IOSurfaceLayerImpl::AppendQuads(
|
| + RenderPass* render_pass,
|
| + const OcclusionTracker<LayerImpl>& occlusion_tracker,
|
| + AppendQuadsData* append_quads_data) {
|
| + SharedQuadState* shared_quad_state =
|
| + render_pass->CreateAndAppendSharedQuadState();
|
| PopulateSharedQuadState(shared_quad_state);
|
|
|
| - AppendDebugBorderQuad(quad_sink, shared_quad_state, append_quads_data);
|
| + AppendDebugBorderQuad(render_pass, shared_quad_state, append_quads_data);
|
|
|
| gfx::Rect quad_rect(content_bounds());
|
| gfx::Rect opaque_rect(contents_opaque() ? quad_rect : gfx::Rect());
|
| - gfx::Rect visible_quad_rect = quad_sink->UnoccludedContentRect(
|
| - this, quad_rect, draw_properties().target_space_transform);
|
| + gfx::Rect visible_quad_rect = occlusion_tracker.UnoccludedContentRect(
|
| + this->render_target(),
|
| + quad_rect,
|
| + draw_properties().target_space_transform);
|
| if (visible_quad_rect.IsEmpty())
|
| return;
|
|
|
| @@ -86,7 +91,7 @@ void IOSurfaceLayerImpl::AppendQuads(QuadSink* quad_sink,
|
| io_surface_size_,
|
| io_surface_resource_id_,
|
| IOSurfaceDrawQuad::FLIPPED);
|
| - quad_sink->Append(quad.PassAs<DrawQuad>());
|
| + render_pass->AppendDrawQuad(quad.PassAs<DrawQuad>());
|
| }
|
|
|
| void IOSurfaceLayerImpl::ReleaseResources() {
|
|
|