OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "cc/base/region.h" | 5 #include "cc/base/region.h" |
6 #include "cc/base/scoped_ptr_vector.h" | 6 #include "cc/base/scoped_ptr_vector.h" |
7 #include "cc/output/compositor_frame_metadata.h" | 7 #include "cc/output/compositor_frame_metadata.h" |
8 #include "cc/output/gl_renderer.h" | 8 #include "cc/output/gl_renderer.h" |
9 #include "cc/output/output_surface.h" | 9 #include "cc/output/output_surface.h" |
10 #include "cc/output/output_surface_client.h" | 10 #include "cc/output/output_surface_client.h" |
(...skipping 1595 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1606 // Should not see the primary surface's overlay. | 1606 // Should not see the primary surface's overlay. |
1607 output_surface_->set_is_displayed_as_overlay_plane(false); | 1607 output_surface_->set_is_displayed_as_overlay_plane(false); |
1608 EXPECT_CALL(*renderer_, DoDrawQuad(_, _, _)).Times(3); | 1608 EXPECT_CALL(*renderer_, DoDrawQuad(_, _, _)).Times(3); |
1609 EXPECT_CALL(scheduler_, Schedule(_, _, _, _, _)).Times(0); | 1609 EXPECT_CALL(scheduler_, Schedule(_, _, _, _, _)).Times(0); |
1610 renderer_->DrawFrame(&pass_list, 1.f, viewport_rect, viewport_rect, false); | 1610 renderer_->DrawFrame(&pass_list, 1.f, viewport_rect, viewport_rect, false); |
1611 SwapBuffers(); | 1611 SwapBuffers(); |
1612 Mock::VerifyAndClearExpectations(renderer_.get()); | 1612 Mock::VerifyAndClearExpectations(renderer_.get()); |
1613 Mock::VerifyAndClearExpectations(&scheduler_); | 1613 Mock::VerifyAndClearExpectations(&scheduler_); |
1614 } | 1614 } |
1615 | 1615 |
| 1616 TEST_F(GLRendererWithOverlaysTest, OccludedQuadNotDrawn) { |
| 1617 bool use_validator = true; |
| 1618 Init(use_validator); |
| 1619 renderer_->set_expect_overlays(true); |
| 1620 gfx::Rect viewport_rect(16, 16); |
| 1621 |
| 1622 scoped_ptr<RenderPass> pass = CreateRenderPass(); |
| 1623 |
| 1624 CreateFullscreenCandidateQuad(resource_provider_.get(), |
| 1625 pass->shared_quad_state_list.back(), |
| 1626 pass.get()); |
| 1627 |
| 1628 CreateFullscreenOpaqueQuad(resource_provider_.get(), |
| 1629 pass->shared_quad_state_list.back(), pass.get()); |
| 1630 CreateFullscreenOpaqueQuad(resource_provider_.get(), |
| 1631 pass->shared_quad_state_list.back(), pass.get()); |
| 1632 |
| 1633 RenderPassList pass_list; |
| 1634 pass_list.push_back(pass.Pass()); |
| 1635 |
| 1636 output_surface_->set_is_displayed_as_overlay_plane(true); |
| 1637 EXPECT_CALL(*renderer_, DoDrawQuad(_, _, _)).Times(0); |
| 1638 EXPECT_CALL(scheduler_, Schedule(_, _, _, _, _)).Times(2); |
| 1639 renderer_->DrawFrame(&pass_list, 1.f, viewport_rect, viewport_rect, false); |
| 1640 SwapBuffers(); |
| 1641 Mock::VerifyAndClearExpectations(renderer_.get()); |
| 1642 Mock::VerifyAndClearExpectations(&scheduler_); |
| 1643 } |
| 1644 |
1616 TEST_F(GLRendererWithOverlaysTest, ResourcesExportedAndReturnedWithDelay) { | 1645 TEST_F(GLRendererWithOverlaysTest, ResourcesExportedAndReturnedWithDelay) { |
1617 bool use_validator = true; | 1646 bool use_validator = true; |
1618 Init(use_validator); | 1647 Init(use_validator); |
1619 renderer_->set_expect_overlays(true); | 1648 renderer_->set_expect_overlays(true); |
1620 | 1649 |
1621 ResourceId resource1 = | 1650 ResourceId resource1 = |
1622 CreateResource(resource_provider_.get(), gfx::Size(32, 32), true); | 1651 CreateResource(resource_provider_.get(), gfx::Size(32, 32), true); |
1623 ResourceId resource2 = | 1652 ResourceId resource2 = |
1624 CreateResource(resource_provider_.get(), gfx::Size(32, 32), true); | 1653 CreateResource(resource_provider_.get(), gfx::Size(32, 32), true); |
1625 ResourceId resource3 = | 1654 ResourceId resource3 = |
(...skipping 104 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1730 renderer_->BeginDrawingFrame(&frame_no_overlays); | 1759 renderer_->BeginDrawingFrame(&frame_no_overlays); |
1731 renderer_->FinishDrawingFrame(&frame_no_overlays); | 1760 renderer_->FinishDrawingFrame(&frame_no_overlays); |
1732 EXPECT_TRUE(resource_provider_->InUseByConsumer(resource1)); | 1761 EXPECT_TRUE(resource_provider_->InUseByConsumer(resource1)); |
1733 SwapBuffers(); | 1762 SwapBuffers(); |
1734 EXPECT_FALSE(resource_provider_->InUseByConsumer(resource1)); | 1763 EXPECT_FALSE(resource_provider_->InUseByConsumer(resource1)); |
1735 Mock::VerifyAndClearExpectations(&scheduler_); | 1764 Mock::VerifyAndClearExpectations(&scheduler_); |
1736 } | 1765 } |
1737 | 1766 |
1738 } // namespace | 1767 } // namespace |
1739 } // namespace cc | 1768 } // namespace cc |
OLD | NEW |