| Index: cc/test/render_pass_test_common.cc
|
| diff --git a/cc/test/render_pass_test_common.cc b/cc/test/render_pass_test_common.cc
|
| index 065f59344b536e291811b24f6d96e388054d8e88..fafb84b1b3a1c06e997c69866892c4bfeb15f1ee 100644
|
| --- a/cc/test/render_pass_test_common.cc
|
| +++ b/cc/test/render_pass_test_common.cc
|
| @@ -19,8 +19,17 @@
|
|
|
| namespace cc {
|
|
|
| +void TestRenderPass::AppendQuad(scoped_ptr<cc::DrawQuad> quad) {
|
| + quad_list.push_back(quad.Pass());
|
| +}
|
| +
|
| +void TestRenderPass::AppendSharedQuadState(
|
| + scoped_ptr<cc::SharedQuadState> state) {
|
| + shared_quad_state_list.push_back(state.Pass());
|
| +}
|
| +
|
| void TestRenderPass::AppendOneOfEveryQuadType(
|
| - cc::ResourceProvider* resourceProvider) {
|
| + cc::ResourceProvider* resourceProvider, RenderPass::Id child_pass) {
|
| gfx::Rect rect(0, 0, 100, 100);
|
| gfx::Rect opaque_rect(10, 10, 80, 80);
|
| const float vertex_opacity[] = {1.0f, 1.0f, 1.0f, 1.0f};
|
| @@ -32,6 +41,36 @@ void TestRenderPass::AppendOneOfEveryQuadType(
|
| resourceProvider->allocateForTesting(texture_resource);
|
| unsigned texture_id = ResourceProvider::ScopedReadLockGL(
|
| resourceProvider, texture_resource).textureId();
|
| + cc::ResourceProvider::ResourceId resource1 =
|
| + resourceProvider->createResource(
|
| + gfx::Size(45, 5),
|
| + resourceProvider->bestTextureFormat(),
|
| + ResourceProvider::TextureUsageAny);
|
| + resourceProvider->allocateForTesting(resource1);
|
| + cc::ResourceProvider::ResourceId resource2 =
|
| + resourceProvider->createResource(
|
| + gfx::Size(346, 61),
|
| + resourceProvider->bestTextureFormat(),
|
| + ResourceProvider::TextureUsageAny);
|
| + resourceProvider->allocateForTesting(resource2);
|
| + cc::ResourceProvider::ResourceId resource3 =
|
| + resourceProvider->createResource(
|
| + gfx::Size(12, 134),
|
| + resourceProvider->bestTextureFormat(),
|
| + ResourceProvider::TextureUsageAny);
|
| + resourceProvider->allocateForTesting(resource3);
|
| + cc::ResourceProvider::ResourceId resource4 =
|
| + resourceProvider->createResource(
|
| + gfx::Size(56, 12),
|
| + resourceProvider->bestTextureFormat(),
|
| + ResourceProvider::TextureUsageAny);
|
| + resourceProvider->allocateForTesting(resource4);
|
| + cc::ResourceProvider::ResourceId resource5 =
|
| + resourceProvider->createResource(
|
| + gfx::Size(73, 26),
|
| + resourceProvider->bestTextureFormat(),
|
| + ResourceProvider::TextureUsageAny);
|
| + resourceProvider->allocateForTesting(resource5);
|
|
|
| scoped_ptr<cc::SharedQuadState> shared_state = cc::SharedQuadState::Create();
|
| shared_state->SetAll(gfx::Transform(),
|
| @@ -66,19 +105,35 @@ void TestRenderPass::AppendOneOfEveryQuadType(
|
| cc::IOSurfaceDrawQuad::FLIPPED);
|
| AppendQuad(io_surface_quad.PassAs<DrawQuad>());
|
|
|
| - scoped_ptr<cc::RenderPassDrawQuad> render_pass_quad =
|
| - cc::RenderPassDrawQuad::Create();
|
| - render_pass_quad->SetNew(shared_state.get(),
|
| - rect,
|
| - cc::RenderPass::Id(1, 1),
|
| - false,
|
| - 0,
|
| - rect,
|
| - gfx::RectF(),
|
| - WebKit::WebFilterOperations(),
|
| - skia::RefPtr<SkImageFilter>(),
|
| - WebKit::WebFilterOperations());
|
| - AppendQuad(render_pass_quad.PassAs<DrawQuad>());
|
| + if (child_pass.layer_id) {
|
| + scoped_ptr<cc::RenderPassDrawQuad> render_pass_quad =
|
| + cc::RenderPassDrawQuad::Create();
|
| + render_pass_quad->SetNew(shared_state.get(),
|
| + rect,
|
| + child_pass,
|
| + false,
|
| + resource5,
|
| + rect,
|
| + gfx::RectF(),
|
| + WebKit::WebFilterOperations(),
|
| + skia::RefPtr<SkImageFilter>(),
|
| + WebKit::WebFilterOperations());
|
| + AppendQuad(render_pass_quad.PassAs<DrawQuad>());
|
| +
|
| + scoped_ptr<cc::RenderPassDrawQuad> render_pass_replica_quad =
|
| + cc::RenderPassDrawQuad::Create();
|
| + render_pass_replica_quad->SetNew(shared_state.get(),
|
| + rect,
|
| + child_pass,
|
| + true,
|
| + resource5,
|
| + rect,
|
| + gfx::RectF(),
|
| + WebKit::WebFilterOperations(),
|
| + skia::RefPtr<SkImageFilter>(),
|
| + WebKit::WebFilterOperations());
|
| + AppendQuad(render_pass_replica_quad.PassAs<DrawQuad>());
|
| + }
|
|
|
| scoped_ptr<cc::SolidColorDrawQuad> solid_color_quad =
|
| cc::SolidColorDrawQuad::Create();
|
| @@ -101,7 +156,7 @@ void TestRenderPass::AppendOneOfEveryQuadType(
|
| texture_quad->SetNew(shared_state.get(),
|
| rect,
|
| opaque_rect,
|
| - texture_resource,
|
| + resource1,
|
| false,
|
| rect,
|
| vertex_opacity,
|
| @@ -111,16 +166,16 @@ void TestRenderPass::AppendOneOfEveryQuadType(
|
| scoped_ptr<cc::TileDrawQuad> scaled_tile_quad =
|
| cc::TileDrawQuad::Create();
|
| scaled_tile_quad->SetNew(shared_state.get(),
|
| - rect,
|
| - opaque_rect,
|
| - texture_resource,
|
| - gfx::RectF(0, 0, 50, 50),
|
| - gfx::Size(50, 50),
|
| - false,
|
| - false,
|
| - false,
|
| - false,
|
| - false);
|
| + rect,
|
| + opaque_rect,
|
| + resource2,
|
| + gfx::RectF(0, 0, 50, 50),
|
| + gfx::Size(50, 50),
|
| + false,
|
| + false,
|
| + false,
|
| + false,
|
| + false);
|
| AppendQuad(scaled_tile_quad.PassAs<DrawQuad>());
|
|
|
| scoped_ptr<cc::SharedQuadState> transformed_state = shared_state->Copy();
|
| @@ -130,16 +185,16 @@ void TestRenderPass::AppendOneOfEveryQuadType(
|
| scoped_ptr<cc::TileDrawQuad> transformed_tile_quad =
|
| cc::TileDrawQuad::Create();
|
| transformed_tile_quad->SetNew(transformed_state.get(),
|
| - rect,
|
| - opaque_rect,
|
| - texture_resource,
|
| - gfx::RectF(0, 0, 100, 100),
|
| - gfx::Size(100, 100),
|
| - false,
|
| - false,
|
| - false,
|
| - false,
|
| - false);
|
| + rect,
|
| + opaque_rect,
|
| + resource3,
|
| + gfx::RectF(0, 0, 100, 100),
|
| + gfx::Size(100, 100),
|
| + false,
|
| + false,
|
| + false,
|
| + false,
|
| + false);
|
| AppendQuad(transformed_tile_quad.PassAs<DrawQuad>());
|
|
|
| scoped_ptr<cc::TileDrawQuad> tile_quad =
|
| @@ -147,7 +202,7 @@ void TestRenderPass::AppendOneOfEveryQuadType(
|
| tile_quad->SetNew(shared_state.get(),
|
| rect,
|
| opaque_rect,
|
| - texture_resource,
|
| + resource4,
|
| gfx::RectF(0, 0, 100, 100),
|
| gfx::Size(100, 100),
|
| false,
|
|
|