| Index: cc/output/overlay_unittest.cc
|
| diff --git a/cc/output/overlay_unittest.cc b/cc/output/overlay_unittest.cc
|
| index 22a5d5b80468b1504cf4f84e500c486f32c9c56e..f0eb6a8b9c3058c7c2e9f2af443cfec5d68b2eff 100644
|
| --- a/cc/output/overlay_unittest.cc
|
| +++ b/cc/output/overlay_unittest.cc
|
| @@ -492,6 +492,34 @@ TEST_F(FullscreenOverlayTest, NotCoveringFullscreenFail) {
|
| EXPECT_EQ(1U, main_pass->quad_list.size());
|
| }
|
|
|
| +TEST_F(FullscreenOverlayTest, RemoveFullscreenQuadFromQuadList) {
|
| + std::unique_ptr<RenderPass> pass = CreateRenderPass();
|
| +
|
| + // Add something in front of it that is fully transparent.
|
| + pass->shared_quad_state_list.back()->opacity = 0.0f;
|
| + CreateOpaqueQuadAt(resource_provider_.get(),
|
| + pass->shared_quad_state_list.back(), pass.get(),
|
| + kOverlayTopLeftRect);
|
| +
|
| + SharedQuadState* shared_state = pass->CreateAndAppendSharedQuadState();
|
| + shared_state->opacity = 1.f;
|
| + CreateFullscreenCandidateQuad(resource_provider_.get(),
|
| + pass->shared_quad_state_list.back(),
|
| + pass.get());
|
| +
|
| + // Check for potential candidates.
|
| + OverlayCandidateList candidate_list;
|
| + overlay_processor_->ProcessForOverlays(resource_provider_.get(), pass.get(),
|
| + &candidate_list, nullptr,
|
| + &damage_rect_);
|
| + ASSERT_EQ(1U, candidate_list.size());
|
| +
|
| + // Check that the fullscreen quad is gone.
|
| + for (const DrawQuad* quad : pass->quad_list) {
|
| + EXPECT_NE(pass->output_rect, quad->rect);
|
| + }
|
| +}
|
| +
|
| TEST_F(SingleOverlayOnTopTest, SuccessfulOverlay) {
|
| std::unique_ptr<RenderPass> pass = CreateRenderPass();
|
| TextureDrawQuad* original_quad =
|
|
|