| OLD | NEW |
| 1 // Copyright 2012 The Chromium Authors. All rights reserved. | 1 // Copyright 2012 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/layers/delegated_renderer_layer_impl.h" | 5 #include "cc/layers/delegated_renderer_layer_impl.h" |
| 6 | 6 |
| 7 #include "cc/base/scoped_ptr_vector.h" | 7 #include "cc/base/scoped_ptr_vector.h" |
| 8 #include "cc/layers/solid_color_layer_impl.h" | 8 #include "cc/layers/solid_color_layer_impl.h" |
| 9 #include "cc/quads/render_pass_draw_quad.h" | 9 #include "cc/quads/render_pass_draw_quad.h" |
| 10 #include "cc/quads/solid_color_draw_quad.h" | 10 #include "cc/quads/solid_color_draw_quad.h" |
| (...skipping 674 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 685 float delegated_device_scale_factor_; | 685 float delegated_device_scale_factor_; |
| 686 }; | 686 }; |
| 687 | 687 |
| 688 TEST_F(DelegatedRendererLayerImplTestTransform, QuadsUnclipped_NoSurface) { | 688 TEST_F(DelegatedRendererLayerImplTestTransform, QuadsUnclipped_NoSurface) { |
| 689 root_delegated_render_pass_is_clipped_ = false; | 689 root_delegated_render_pass_is_clipped_ = false; |
| 690 SetUpTest(); | 690 SetUpTest(); |
| 691 | 691 |
| 692 LayerTreeHostImpl::FrameData frame; | 692 LayerTreeHostImpl::FrameData frame; |
| 693 EXPECT_EQ(DRAW_SUCCESS, host_impl_->PrepareToDraw(&frame)); | 693 EXPECT_EQ(DRAW_SUCCESS, host_impl_->PrepareToDraw(&frame)); |
| 694 | 694 |
| 695 const SharedQuadState* root_delegated_shared_quad_state = NULL; | 695 const SharedQuadState* root_delegated_shared_quad_state = nullptr; |
| 696 const SharedQuadState* contrib_delegated_shared_quad_state = NULL; | 696 const SharedQuadState* contrib_delegated_shared_quad_state = nullptr; |
| 697 VerifyRenderPasses( | 697 VerifyRenderPasses( |
| 698 frame, | 698 frame, |
| 699 2, | 699 2, |
| 700 &root_delegated_shared_quad_state, | 700 &root_delegated_shared_quad_state, |
| 701 &contrib_delegated_shared_quad_state); | 701 &contrib_delegated_shared_quad_state); |
| 702 | 702 |
| 703 // When the quads don't have a clip of their own, the clip rect is set to | 703 // When the quads don't have a clip of their own, the clip rect is set to |
| 704 // the drawable_content_rect of the delegated renderer layer. | 704 // the drawable_content_rect of the delegated renderer layer. |
| 705 EXPECT_EQ(delegated_renderer_layer_->drawable_content_rect().ToString(), | 705 EXPECT_EQ(delegated_renderer_layer_->drawable_content_rect().ToString(), |
| 706 root_delegated_shared_quad_state->clip_rect.ToString()); | 706 root_delegated_shared_quad_state->clip_rect.ToString()); |
| (...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 740 host_impl_->DidDrawAllLayers(frame); | 740 host_impl_->DidDrawAllLayers(frame); |
| 741 } | 741 } |
| 742 | 742 |
| 743 TEST_F(DelegatedRendererLayerImplTestTransform, QuadsClipped_NoSurface) { | 743 TEST_F(DelegatedRendererLayerImplTestTransform, QuadsClipped_NoSurface) { |
| 744 root_delegated_render_pass_is_clipped_ = true; | 744 root_delegated_render_pass_is_clipped_ = true; |
| 745 SetUpTest(); | 745 SetUpTest(); |
| 746 | 746 |
| 747 LayerTreeHostImpl::FrameData frame; | 747 LayerTreeHostImpl::FrameData frame; |
| 748 EXPECT_EQ(DRAW_SUCCESS, host_impl_->PrepareToDraw(&frame)); | 748 EXPECT_EQ(DRAW_SUCCESS, host_impl_->PrepareToDraw(&frame)); |
| 749 | 749 |
| 750 const SharedQuadState* root_delegated_shared_quad_state = NULL; | 750 const SharedQuadState* root_delegated_shared_quad_state = nullptr; |
| 751 const SharedQuadState* contrib_delegated_shared_quad_state = NULL; | 751 const SharedQuadState* contrib_delegated_shared_quad_state = nullptr; |
| 752 VerifyRenderPasses( | 752 VerifyRenderPasses( |
| 753 frame, | 753 frame, |
| 754 2, | 754 2, |
| 755 &root_delegated_shared_quad_state, | 755 &root_delegated_shared_quad_state, |
| 756 &contrib_delegated_shared_quad_state); | 756 &contrib_delegated_shared_quad_state); |
| 757 | 757 |
| 758 // Since the quads have a clip_rect it should be modified by delegated | 758 // Since the quads have a clip_rect it should be modified by delegated |
| 759 // renderer layer's draw_transform. | 759 // renderer layer's draw_transform. |
| 760 // The position of the resulting clip_rect is: | 760 // The position of the resulting clip_rect is: |
| 761 // (clip rect position (10) * inverse dsf (1/2) + translate (8)) * | 761 // (clip rect position (10) * inverse dsf (1/2) + translate (8)) * |
| (...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 801 | 801 |
| 802 TEST_F(DelegatedRendererLayerImplTestTransform, QuadsUnclipped_Surface) { | 802 TEST_F(DelegatedRendererLayerImplTestTransform, QuadsUnclipped_Surface) { |
| 803 root_delegated_render_pass_is_clipped_ = false; | 803 root_delegated_render_pass_is_clipped_ = false; |
| 804 SetUpTest(); | 804 SetUpTest(); |
| 805 | 805 |
| 806 delegated_renderer_layer_->SetForceRenderSurface(true); | 806 delegated_renderer_layer_->SetForceRenderSurface(true); |
| 807 | 807 |
| 808 LayerTreeHostImpl::FrameData frame; | 808 LayerTreeHostImpl::FrameData frame; |
| 809 EXPECT_EQ(DRAW_SUCCESS, host_impl_->PrepareToDraw(&frame)); | 809 EXPECT_EQ(DRAW_SUCCESS, host_impl_->PrepareToDraw(&frame)); |
| 810 | 810 |
| 811 const SharedQuadState* root_delegated_shared_quad_state = NULL; | 811 const SharedQuadState* root_delegated_shared_quad_state = nullptr; |
| 812 const SharedQuadState* contrib_delegated_shared_quad_state = NULL; | 812 const SharedQuadState* contrib_delegated_shared_quad_state = nullptr; |
| 813 VerifyRenderPasses( | 813 VerifyRenderPasses( |
| 814 frame, | 814 frame, |
| 815 3, | 815 3, |
| 816 &root_delegated_shared_quad_state, | 816 &root_delegated_shared_quad_state, |
| 817 &contrib_delegated_shared_quad_state); | 817 &contrib_delegated_shared_quad_state); |
| 818 | 818 |
| 819 // When the layer owns a surface, then its position and translation are not | 819 // When the layer owns a surface, then its position and translation are not |
| 820 // a part of its draw transform. | 820 // a part of its draw transform. |
| 821 EXPECT_EQ(gfx::Rect(10, 10, 35, 35).ToString(), | 821 EXPECT_EQ(gfx::Rect(10, 10, 35, 35).ToString(), |
| 822 root_delegated_shared_quad_state->clip_rect.ToString()); | 822 root_delegated_shared_quad_state->clip_rect.ToString()); |
| (...skipping 26 matching lines...) Expand all Loading... |
| 849 | 849 |
| 850 TEST_F(DelegatedRendererLayerImplTestTransform, QuadsClipped_Surface) { | 850 TEST_F(DelegatedRendererLayerImplTestTransform, QuadsClipped_Surface) { |
| 851 root_delegated_render_pass_is_clipped_ = true; | 851 root_delegated_render_pass_is_clipped_ = true; |
| 852 SetUpTest(); | 852 SetUpTest(); |
| 853 | 853 |
| 854 delegated_renderer_layer_->SetForceRenderSurface(true); | 854 delegated_renderer_layer_->SetForceRenderSurface(true); |
| 855 | 855 |
| 856 LayerTreeHostImpl::FrameData frame; | 856 LayerTreeHostImpl::FrameData frame; |
| 857 EXPECT_EQ(DRAW_SUCCESS, host_impl_->PrepareToDraw(&frame)); | 857 EXPECT_EQ(DRAW_SUCCESS, host_impl_->PrepareToDraw(&frame)); |
| 858 | 858 |
| 859 const SharedQuadState* root_delegated_shared_quad_state = NULL; | 859 const SharedQuadState* root_delegated_shared_quad_state = nullptr; |
| 860 const SharedQuadState* contrib_delegated_shared_quad_state = NULL; | 860 const SharedQuadState* contrib_delegated_shared_quad_state = nullptr; |
| 861 VerifyRenderPasses( | 861 VerifyRenderPasses( |
| 862 frame, | 862 frame, |
| 863 3, | 863 3, |
| 864 &root_delegated_shared_quad_state, | 864 &root_delegated_shared_quad_state, |
| 865 &contrib_delegated_shared_quad_state); | 865 &contrib_delegated_shared_quad_state); |
| 866 | 866 |
| 867 // When the layer owns a surface, then its position and translation are not | 867 // When the layer owns a surface, then its position and translation are not |
| 868 // a part of its draw transform. The clip_rect should be preserved. | 868 // a part of its draw transform. The clip_rect should be preserved. |
| 869 EXPECT_EQ(gfx::Rect(10, 10, 35, 35).ToString(), | 869 EXPECT_EQ(gfx::Rect(10, 10, 35, 35).ToString(), |
| 870 root_delegated_shared_quad_state->clip_rect.ToString()); | 870 root_delegated_shared_quad_state->clip_rect.ToString()); |
| (...skipping 25 matching lines...) Expand all Loading... |
| 896 | 896 |
| 897 TEST_F(DelegatedRendererLayerImplTestTransform, MismatchedDeviceScaleFactor) { | 897 TEST_F(DelegatedRendererLayerImplTestTransform, MismatchedDeviceScaleFactor) { |
| 898 root_delegated_render_pass_is_clipped_ = true; | 898 root_delegated_render_pass_is_clipped_ = true; |
| 899 delegated_device_scale_factor_ = 1.3f; | 899 delegated_device_scale_factor_ = 1.3f; |
| 900 | 900 |
| 901 SetUpTest(); | 901 SetUpTest(); |
| 902 | 902 |
| 903 LayerTreeHostImpl::FrameData frame; | 903 LayerTreeHostImpl::FrameData frame; |
| 904 EXPECT_EQ(DRAW_SUCCESS, host_impl_->PrepareToDraw(&frame)); | 904 EXPECT_EQ(DRAW_SUCCESS, host_impl_->PrepareToDraw(&frame)); |
| 905 | 905 |
| 906 const SharedQuadState* root_delegated_shared_quad_state = NULL; | 906 const SharedQuadState* root_delegated_shared_quad_state = nullptr; |
| 907 const SharedQuadState* contrib_delegated_shared_quad_state = NULL; | 907 const SharedQuadState* contrib_delegated_shared_quad_state = nullptr; |
| 908 VerifyRenderPasses(frame, | 908 VerifyRenderPasses(frame, |
| 909 2, | 909 2, |
| 910 &root_delegated_shared_quad_state, | 910 &root_delegated_shared_quad_state, |
| 911 &contrib_delegated_shared_quad_state); | 911 &contrib_delegated_shared_quad_state); |
| 912 | 912 |
| 913 // The parent tree's device scale factor is 2.0, but the child has submitted a | 913 // The parent tree's device scale factor is 2.0, but the child has submitted a |
| 914 // frame with a device scale factor of 1.3. Absent any better option, the | 914 // frame with a device scale factor of 1.3. Absent any better option, the |
| 915 // only thing we can do is scale from 1.3 -> 2.0. | 915 // only thing we can do is scale from 1.3 -> 2.0. |
| 916 | 916 |
| 917 gfx::Transform expected; | 917 gfx::Transform expected; |
| (...skipping 647 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1565 scoped_ptr<DelegatedRendererLayerImpl> other_layer = | 1565 scoped_ptr<DelegatedRendererLayerImpl> other_layer = |
| 1566 DelegatedRendererLayerImpl::Create(host_impl_->active_tree(), 6); | 1566 DelegatedRendererLayerImpl::Create(host_impl_->active_tree(), 6); |
| 1567 | 1567 |
| 1568 delegated_renderer_layer_impl->PushPropertiesTo(other_layer.get()); | 1568 delegated_renderer_layer_impl->PushPropertiesTo(other_layer.get()); |
| 1569 | 1569 |
| 1570 EXPECT_EQ(0.5f, other_layer->inverse_device_scale_factor()); | 1570 EXPECT_EQ(0.5f, other_layer->inverse_device_scale_factor()); |
| 1571 } | 1571 } |
| 1572 | 1572 |
| 1573 } // namespace | 1573 } // namespace |
| 1574 } // namespace cc | 1574 } // namespace cc |
| OLD | NEW |