OLD | NEW |
1 // Copyright 2011 The Chromium Authors. All rights reserved. | 1 // Copyright 2011 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/trees/layer_tree_host.h" | 5 #include "cc/trees/layer_tree_host.h" |
6 | 6 |
7 #include <stddef.h> | 7 #include <stddef.h> |
8 #include <stdint.h> | 8 #include <stdint.h> |
9 | 9 |
10 #include <algorithm> | 10 #include <algorithm> |
(...skipping 786 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
797 root_->AddChild(child_); | 797 root_->AddChild(child_); |
798 layer_tree_host()->SetRootLayer(root_); | 798 layer_tree_host()->SetRootLayer(root_); |
799 LayerTreeHostTest::SetupTree(); | 799 LayerTreeHostTest::SetupTree(); |
800 } | 800 } |
801 | 801 |
802 void BeginTest() override { PostSetNeedsCommitToMainThread(); } | 802 void BeginTest() override { PostSetNeedsCommitToMainThread(); } |
803 | 803 |
804 void DidCommit() override { | 804 void DidCommit() override { |
805 switch (layer_tree_host()->SourceFrameNumber()) { | 805 switch (layer_tree_host()->SourceFrameNumber()) { |
806 case 1: | 806 case 1: |
807 // child_ should create transform, effect, clip node. | 807 // child_ should create transform, effect node. |
808 child_->SetForceRenderSurfaceForTesting(true); | 808 child_->SetForceRenderSurfaceForTesting(true); |
809 break; | 809 break; |
810 case 2: | 810 case 2: |
811 // child_ should create a scroll node. | 811 // child_ should create a scroll node. |
812 child_->SetScrollClipLayerId(root_->id()); | 812 child_->SetScrollClipLayerId(root_->id()); |
813 break; | 813 break; |
814 case 3: | 814 case 3: |
| 815 // child_ should create a clip node. |
| 816 child_->SetMasksToBounds(true); |
| 817 break; |
| 818 case 4: |
815 // child_ should not create any property tree node. | 819 // child_ should not create any property tree node. |
| 820 child_->SetMasksToBounds(false); |
816 child_->SetForceRenderSurfaceForTesting(false); | 821 child_->SetForceRenderSurfaceForTesting(false); |
817 child_->SetScrollClipLayerId(Layer::INVALID_ID); | 822 child_->SetScrollClipLayerId(Layer::INVALID_ID); |
818 } | 823 } |
819 } | 824 } |
820 | 825 |
821 void CommitCompleteOnThread(LayerTreeHostImpl* impl) override { | 826 void CommitCompleteOnThread(LayerTreeHostImpl* impl) override { |
822 PropertyTrees* property_trees = impl->sync_tree()->property_trees(); | 827 PropertyTrees* property_trees = impl->sync_tree()->property_trees(); |
823 auto* root_transform_node = | 828 auto* root_transform_node = |
824 property_trees->transform_tree.FindNodeFromOwningLayerId(root_->id()); | 829 property_trees->transform_tree.FindNodeFromOwningLayerId(root_->id()); |
825 auto* child_transform_node = | 830 auto* child_transform_node = |
826 property_trees->transform_tree.FindNodeFromOwningLayerId(child_->id()); | 831 property_trees->transform_tree.FindNodeFromOwningLayerId(child_->id()); |
827 auto* root_effect_node = | 832 auto* root_effect_node = |
828 property_trees->effect_tree.FindNodeFromOwningLayerId(root_->id()); | 833 property_trees->effect_tree.FindNodeFromOwningLayerId(root_->id()); |
829 auto* child_effect_node = | 834 auto* child_effect_node = |
830 property_trees->effect_tree.FindNodeFromOwningLayerId(child_->id()); | 835 property_trees->effect_tree.FindNodeFromOwningLayerId(child_->id()); |
831 auto* root_clip_node = | 836 auto* root_clip_node = |
832 property_trees->clip_tree.FindNodeFromOwningLayerId(root_->id()); | 837 property_trees->clip_tree.FindNodeFromOwningLayerId(root_->id()); |
833 auto* child_clip_node = | 838 auto* child_clip_node = |
834 property_trees->clip_tree.FindNodeFromOwningLayerId(child_->id()); | 839 property_trees->clip_tree.FindNodeFromOwningLayerId(child_->id()); |
835 auto* root_scroll_node = | 840 auto* root_scroll_node = |
836 property_trees->scroll_tree.FindNodeFromOwningLayerId(root_->id()); | 841 property_trees->scroll_tree.FindNodeFromOwningLayerId(root_->id()); |
837 auto* child_scroll_node = | 842 auto* child_scroll_node = |
838 property_trees->scroll_tree.FindNodeFromOwningLayerId(child_->id()); | 843 property_trees->scroll_tree.FindNodeFromOwningLayerId(child_->id()); |
839 switch (impl->sync_tree()->source_frame_number()) { | 844 switch (impl->sync_tree()->source_frame_number()) { |
840 case 0: | 845 case 0: |
841 // root_ should create every property tree node and child_ should not | 846 // root_ should create transform, scroll and effect tree nodes but not |
842 // create any. | 847 // a clip node. |
843 EXPECT_NE(root_transform_node, nullptr); | 848 EXPECT_NE(root_transform_node, nullptr); |
844 EXPECT_EQ(root_transform_node->id, root_->transform_tree_index()); | 849 EXPECT_EQ(root_transform_node->id, root_->transform_tree_index()); |
845 EXPECT_NE(root_effect_node, nullptr); | 850 EXPECT_NE(root_effect_node, nullptr); |
846 EXPECT_EQ(root_effect_node->id, root_->effect_tree_index()); | 851 EXPECT_EQ(root_effect_node->id, root_->effect_tree_index()); |
847 EXPECT_NE(root_clip_node, nullptr); | |
848 EXPECT_EQ(root_clip_node->id, root_->clip_tree_index()); | |
849 EXPECT_NE(root_scroll_node, nullptr); | 852 EXPECT_NE(root_scroll_node, nullptr); |
850 EXPECT_EQ(root_scroll_node->id, root_->scroll_tree_index()); | 853 EXPECT_EQ(root_scroll_node->id, root_->scroll_tree_index()); |
| 854 EXPECT_EQ(root_clip_node, nullptr); |
851 EXPECT_EQ(child_transform_node, nullptr); | 855 EXPECT_EQ(child_transform_node, nullptr); |
852 EXPECT_EQ(child_effect_node, nullptr); | 856 EXPECT_EQ(child_effect_node, nullptr); |
853 EXPECT_EQ(child_clip_node, nullptr); | 857 EXPECT_EQ(child_clip_node, nullptr); |
854 EXPECT_EQ(child_scroll_node, nullptr); | 858 EXPECT_EQ(child_scroll_node, nullptr); |
855 break; | 859 break; |
856 case 1: | 860 case 1: |
857 // child_ should create a transfrom, clip, effect nodes but not a scroll | 861 // child_ should create a transfrom, effect nodes but not a scroll, clip |
858 // node. | 862 // node. |
859 EXPECT_NE(child_transform_node, nullptr); | 863 EXPECT_NE(child_transform_node, nullptr); |
860 EXPECT_EQ(child_transform_node->id, child_->transform_tree_index()); | 864 EXPECT_EQ(child_transform_node->id, child_->transform_tree_index()); |
861 EXPECT_NE(child_effect_node, nullptr); | 865 EXPECT_NE(child_effect_node, nullptr); |
862 EXPECT_EQ(child_effect_node->id, child_->effect_tree_index()); | 866 EXPECT_EQ(child_effect_node->id, child_->effect_tree_index()); |
863 EXPECT_NE(child_clip_node, nullptr); | 867 EXPECT_EQ(child_clip_node, nullptr); |
864 EXPECT_EQ(child_clip_node->id, child_->clip_tree_index()); | |
865 EXPECT_EQ(child_scroll_node, nullptr); | 868 EXPECT_EQ(child_scroll_node, nullptr); |
866 break; | 869 break; |
867 case 2: | 870 case 2: |
868 // child_ should create a scroll node. | 871 // child_ should create a scroll node. |
869 EXPECT_NE(child_scroll_node, nullptr); | 872 EXPECT_NE(child_scroll_node, nullptr); |
870 EXPECT_EQ(child_scroll_node->id, child_->scroll_tree_index()); | 873 EXPECT_EQ(child_scroll_node->id, child_->scroll_tree_index()); |
871 break; | 874 break; |
872 case 3: | 875 case 3: |
| 876 // child_ should create a clip node. |
| 877 EXPECT_NE(child_clip_node, nullptr); |
| 878 EXPECT_EQ(child_clip_node->id, child_->clip_tree_index()); |
| 879 break; |
| 880 case 4: |
873 // child_ should not create any property tree nodes. | 881 // child_ should not create any property tree nodes. |
874 EXPECT_EQ(child_transform_node, nullptr); | 882 EXPECT_EQ(child_transform_node, nullptr); |
875 EXPECT_EQ(child_effect_node, nullptr); | 883 EXPECT_EQ(child_effect_node, nullptr); |
876 EXPECT_EQ(child_clip_node, nullptr); | 884 EXPECT_EQ(child_clip_node, nullptr); |
877 EXPECT_EQ(child_scroll_node, nullptr); | 885 EXPECT_EQ(child_scroll_node, nullptr); |
878 EndTest(); | 886 EndTest(); |
879 break; | 887 break; |
880 } | 888 } |
881 } | 889 } |
882 | 890 |
(...skipping 6302 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
7185 | 7193 |
7186 private: | 7194 private: |
7187 bool first_ = true; | 7195 bool first_ = true; |
7188 SkBitmap bitmap_; | 7196 SkBitmap bitmap_; |
7189 }; | 7197 }; |
7190 | 7198 |
7191 SINGLE_AND_MULTI_THREAD_TEST_F(LayerTreeHostTestQueueImageDecodeNonLazy); | 7199 SINGLE_AND_MULTI_THREAD_TEST_F(LayerTreeHostTestQueueImageDecodeNonLazy); |
7192 | 7200 |
7193 } // namespace | 7201 } // namespace |
7194 } // namespace cc | 7202 } // namespace cc |
OLD | NEW |