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/trees/layer_tree_host.h" | 5 #include "cc/trees/layer_tree_host.h" |
6 | 6 |
7 #include "base/basictypes.h" | 7 #include "base/basictypes.h" |
8 #include "cc/layers/content_layer.h" | 8 #include "cc/layers/content_layer.h" |
9 #include "cc/layers/delegated_frame_provider.h" | 9 #include "cc/layers/delegated_frame_provider.h" |
10 #include "cc/layers/delegated_frame_resource_collection.h" | 10 #include "cc/layers/delegated_frame_resource_collection.h" |
(...skipping 525 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
536 | 536 |
537 bool in_composite_; | 537 bool in_composite_; |
538 }; | 538 }; |
539 | 539 |
540 SINGLE_THREAD_NOIMPL_TEST_F(LayerTreeHostContextTestAvoidUnnecessaryComposite); | 540 SINGLE_THREAD_NOIMPL_TEST_F(LayerTreeHostContextTestAvoidUnnecessaryComposite); |
541 | 541 |
542 class LayerTreeHostContextTestLostContextSucceedsWithContent | 542 class LayerTreeHostContextTestLostContextSucceedsWithContent |
543 : public LayerTreeHostContextTestLostContextSucceeds { | 543 : public LayerTreeHostContextTestLostContextSucceeds { |
544 public: | 544 public: |
545 void SetupTree() override { | 545 void SetupTree() override { |
546 root_ = Layer::Create(); | 546 root_ = Layer::Create(layer_settings()); |
547 root_->SetBounds(gfx::Size(10, 10)); | 547 root_->SetBounds(gfx::Size(10, 10)); |
548 root_->SetIsDrawable(true); | 548 root_->SetIsDrawable(true); |
549 | 549 |
550 // Paint non-solid color. | 550 // Paint non-solid color. |
551 SkPaint paint; | 551 SkPaint paint; |
552 paint.setColor(SkColorSetARGB(100, 80, 200, 200)); | 552 paint.setColor(SkColorSetARGB(100, 80, 200, 200)); |
553 client_.add_draw_rect(gfx::Rect(0, 0, 5, 5), paint); | 553 client_.add_draw_rect(gfx::Rect(0, 0, 5, 5), paint); |
554 | 554 |
555 if (layer_tree_host()->settings().impl_side_painting) | 555 if (layer_tree_host()->settings().impl_side_painting) |
556 layer_ = FakePictureLayer::Create(&client_); | 556 layer_ = FakePictureLayer::Create(layer_settings(), &client_); |
557 else | 557 else |
558 layer_ = FakeContentLayer::Create(&client_); | 558 layer_ = FakeContentLayer::Create(layer_settings(), &client_); |
559 layer_->SetBounds(gfx::Size(10, 10)); | 559 layer_->SetBounds(gfx::Size(10, 10)); |
560 layer_->SetIsDrawable(true); | 560 layer_->SetIsDrawable(true); |
561 | 561 |
562 root_->AddChild(layer_); | 562 root_->AddChild(layer_); |
563 | 563 |
564 layer_tree_host()->SetRootLayer(root_); | 564 layer_tree_host()->SetRootLayer(root_); |
565 LayerTreeHostContextTest::SetupTree(); | 565 LayerTreeHostContextTest::SetupTree(); |
566 } | 566 } |
567 | 567 |
568 void InvalidateAndSetNeedsCommit() override { | 568 void InvalidateAndSetNeedsCommit() override { |
(...skipping 68 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
637 num_commits_(0), | 637 num_commits_(0), |
638 lost_context_(false) {} | 638 lost_context_(false) {} |
639 | 639 |
640 void SetupTree() override { | 640 void SetupTree() override { |
641 // Paint non-solid color. | 641 // Paint non-solid color. |
642 SkPaint paint; | 642 SkPaint paint; |
643 paint.setColor(SkColorSetARGB(100, 80, 200, 200)); | 643 paint.setColor(SkColorSetARGB(100, 80, 200, 200)); |
644 client_.add_draw_rect(gfx::Rect(0, 0, 5, 5), paint); | 644 client_.add_draw_rect(gfx::Rect(0, 0, 5, 5), paint); |
645 | 645 |
646 if (layer_tree_host()->settings().impl_side_painting) { | 646 if (layer_tree_host()->settings().impl_side_painting) { |
647 picture_layer_ = FakePictureLayer::Create(&client_); | 647 picture_layer_ = FakePictureLayer::Create(layer_settings(), &client_); |
648 picture_layer_->SetBounds(gfx::Size(10, 20)); | 648 picture_layer_->SetBounds(gfx::Size(10, 20)); |
649 layer_tree_host()->SetRootLayer(picture_layer_); | 649 layer_tree_host()->SetRootLayer(picture_layer_); |
650 } else { | 650 } else { |
651 content_layer_ = FakeContentLayer::Create(&client_); | 651 content_layer_ = FakeContentLayer::Create(layer_settings(), &client_); |
652 content_layer_->SetBounds(gfx::Size(10, 20)); | 652 content_layer_->SetBounds(gfx::Size(10, 20)); |
653 layer_tree_host()->SetRootLayer(content_layer_); | 653 layer_tree_host()->SetRootLayer(content_layer_); |
654 } | 654 } |
655 | 655 |
656 LayerTreeHostContextTest::SetupTree(); | 656 LayerTreeHostContextTest::SetupTree(); |
657 } | 657 } |
658 | 658 |
659 void BeginTest() override { PostSetNeedsCommitToMainThread(); } | 659 void BeginTest() override { PostSetNeedsCommitToMainThread(); } |
660 | 660 |
661 void PostEvictTextures() { | 661 void PostEvictTextures() { |
(...skipping 149 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
811 LayerTreeHostContextTest::CreateContext3d(); | 811 LayerTreeHostContextTest::CreateContext3d(); |
812 if (times_to_lose_on_end_query_) { | 812 if (times_to_lose_on_end_query_) { |
813 --times_to_lose_on_end_query_; | 813 --times_to_lose_on_end_query_; |
814 context->set_times_end_query_succeeds(5); | 814 context->set_times_end_query_succeeds(5); |
815 } | 815 } |
816 return context.Pass(); | 816 return context.Pass(); |
817 } | 817 } |
818 | 818 |
819 void SetupTree() override { | 819 void SetupTree() override { |
820 if (layer_tree_host()->settings().impl_side_painting) | 820 if (layer_tree_host()->settings().impl_side_painting) |
821 parent_ = FakePictureLayer::Create(&client_); | 821 parent_ = FakePictureLayer::Create(layer_settings(), &client_); |
822 else | 822 else |
823 parent_ = FakeContentLayer::Create(&client_); | 823 parent_ = FakeContentLayer::Create(layer_settings(), &client_); |
824 | 824 |
825 parent_->SetBounds(gfx::Size(num_children_, 1)); | 825 parent_->SetBounds(gfx::Size(num_children_, 1)); |
826 | 826 |
827 for (int i = 0; i < num_children_; i++) { | 827 for (int i = 0; i < num_children_; i++) { |
828 scoped_refptr<Layer> child; | 828 scoped_refptr<Layer> child; |
829 if (layer_tree_host()->settings().impl_side_painting) | 829 if (layer_tree_host()->settings().impl_side_painting) |
830 child = FakePictureLayer::Create(&client_); | 830 child = FakePictureLayer::Create(layer_settings(), &client_); |
831 else | 831 else |
832 child = FakeContentLayer::Create(&client_); | 832 child = FakeContentLayer::Create(layer_settings(), &client_); |
833 child->SetPosition(gfx::PointF(i, 0.f)); | 833 child->SetPosition(gfx::PointF(i, 0.f)); |
834 child->SetBounds(gfx::Size(1, 1)); | 834 child->SetBounds(gfx::Size(1, 1)); |
835 parent_->AddChild(child); | 835 parent_->AddChild(child); |
836 } | 836 } |
837 | 837 |
838 layer_tree_host()->SetRootLayer(parent_); | 838 layer_tree_host()->SetRootLayer(parent_); |
839 LayerTreeHostContextTest::SetupTree(); | 839 LayerTreeHostContextTest::SetupTree(); |
840 } | 840 } |
841 | 841 |
842 void BeginTest() override { PostSetNeedsCommitToMainThread(); } | 842 void BeginTest() override { PostSetNeedsCommitToMainThread(); } |
(...skipping 15 matching lines...) Expand all Loading... |
858 SINGLE_AND_MULTI_THREAD_NOIMPL_TEST_F( | 858 SINGLE_AND_MULTI_THREAD_NOIMPL_TEST_F( |
859 LayerTreeHostContextTestLostContextWhileUpdatingResources); | 859 LayerTreeHostContextTestLostContextWhileUpdatingResources); |
860 | 860 |
861 class LayerTreeHostContextTestLayersNotified : public LayerTreeHostContextTest { | 861 class LayerTreeHostContextTestLayersNotified : public LayerTreeHostContextTest { |
862 public: | 862 public: |
863 LayerTreeHostContextTestLayersNotified() | 863 LayerTreeHostContextTestLayersNotified() |
864 : LayerTreeHostContextTest(), num_commits_(0) {} | 864 : LayerTreeHostContextTest(), num_commits_(0) {} |
865 | 865 |
866 void SetupTree() override { | 866 void SetupTree() override { |
867 if (layer_tree_host()->settings().impl_side_painting) { | 867 if (layer_tree_host()->settings().impl_side_painting) { |
868 root_ = FakePictureLayer::Create(&client_); | 868 root_ = FakePictureLayer::Create(layer_settings(), &client_); |
869 child_ = FakePictureLayer::Create(&client_); | 869 child_ = FakePictureLayer::Create(layer_settings(), &client_); |
870 grandchild_ = FakePictureLayer::Create(&client_); | 870 grandchild_ = FakePictureLayer::Create(layer_settings(), &client_); |
871 } else { | 871 } else { |
872 root_ = FakeContentLayer::Create(&client_); | 872 root_ = FakeContentLayer::Create(layer_settings(), &client_); |
873 child_ = FakeContentLayer::Create(&client_); | 873 child_ = FakeContentLayer::Create(layer_settings(), &client_); |
874 grandchild_ = FakeContentLayer::Create(&client_); | 874 grandchild_ = FakeContentLayer::Create(layer_settings(), &client_); |
875 } | 875 } |
876 | 876 |
877 root_->AddChild(child_); | 877 root_->AddChild(child_); |
878 child_->AddChild(grandchild_); | 878 child_->AddChild(grandchild_); |
879 | 879 |
880 layer_tree_host()->SetRootLayer(root_); | 880 layer_tree_host()->SetRootLayer(root_); |
881 LayerTreeHostContextTest::SetupTree(); | 881 LayerTreeHostContextTest::SetupTree(); |
882 } | 882 } |
883 | 883 |
884 void BeginTest() override { PostSetNeedsCommitToMainThread(); } | 884 void BeginTest() override { PostSetNeedsCommitToMainThread(); } |
(...skipping 126 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1011 ResourceId resource = child_resource_provider_->CreateResource( | 1011 ResourceId resource = child_resource_provider_->CreateResource( |
1012 gfx::Size(4, 4), GL_CLAMP_TO_EDGE, | 1012 gfx::Size(4, 4), GL_CLAMP_TO_EDGE, |
1013 ResourceProvider::TEXTURE_HINT_IMMUTABLE, RGBA_8888); | 1013 ResourceProvider::TEXTURE_HINT_IMMUTABLE, RGBA_8888); |
1014 ResourceProvider::ScopedWriteLockGL lock(child_resource_provider_.get(), | 1014 ResourceProvider::ScopedWriteLockGL lock(child_resource_provider_.get(), |
1015 resource); | 1015 resource); |
1016 | 1016 |
1017 gpu::Mailbox mailbox; | 1017 gpu::Mailbox mailbox; |
1018 gl->GenMailboxCHROMIUM(mailbox.name); | 1018 gl->GenMailboxCHROMIUM(mailbox.name); |
1019 GLuint sync_point = gl->InsertSyncPointCHROMIUM(); | 1019 GLuint sync_point = gl->InsertSyncPointCHROMIUM(); |
1020 | 1020 |
1021 scoped_refptr<Layer> root = Layer::Create(); | 1021 scoped_refptr<Layer> root = Layer::Create(layer_settings()); |
1022 root->SetBounds(gfx::Size(10, 10)); | 1022 root->SetBounds(gfx::Size(10, 10)); |
1023 root->SetIsDrawable(true); | 1023 root->SetIsDrawable(true); |
1024 | 1024 |
1025 scoped_refptr<FakeDelegatedRendererLayer> delegated = | 1025 scoped_refptr<FakeDelegatedRendererLayer> delegated = |
1026 FakeDelegatedRendererLayer::Create(delegated_frame_provider_.get()); | 1026 FakeDelegatedRendererLayer::Create(layer_settings(), |
| 1027 delegated_frame_provider_.get()); |
1027 delegated->SetBounds(gfx::Size(10, 10)); | 1028 delegated->SetBounds(gfx::Size(10, 10)); |
1028 delegated->SetIsDrawable(true); | 1029 delegated->SetIsDrawable(true); |
1029 root->AddChild(delegated); | 1030 root->AddChild(delegated); |
1030 | 1031 |
1031 scoped_refptr<Layer> layer; | 1032 scoped_refptr<Layer> layer; |
1032 if (layer_tree_host()->settings().impl_side_painting) | 1033 if (layer_tree_host()->settings().impl_side_painting) |
1033 layer = PictureLayer::Create(&client_); | 1034 layer = PictureLayer::Create(layer_settings(), &client_); |
1034 else | 1035 else |
1035 layer = ContentLayer::Create(&client_); | 1036 layer = ContentLayer::Create(layer_settings(), &client_); |
1036 layer->SetBounds(gfx::Size(10, 10)); | 1037 layer->SetBounds(gfx::Size(10, 10)); |
1037 layer->SetIsDrawable(true); | 1038 layer->SetIsDrawable(true); |
1038 root->AddChild(layer); | 1039 root->AddChild(layer); |
1039 | 1040 |
1040 scoped_refptr<TextureLayer> texture = TextureLayer::CreateForMailbox(NULL); | 1041 scoped_refptr<TextureLayer> texture = |
| 1042 TextureLayer::CreateForMailbox(layer_settings_, NULL); |
1041 texture->SetBounds(gfx::Size(10, 10)); | 1043 texture->SetBounds(gfx::Size(10, 10)); |
1042 texture->SetIsDrawable(true); | 1044 texture->SetIsDrawable(true); |
1043 texture->SetTextureMailbox( | 1045 texture->SetTextureMailbox( |
1044 TextureMailbox(mailbox, GL_TEXTURE_2D, sync_point), | 1046 TextureMailbox(mailbox, GL_TEXTURE_2D, sync_point), |
1045 SingleReleaseCallback::Create( | 1047 SingleReleaseCallback::Create( |
1046 base::Bind(&LayerTreeHostContextTestDontUseLostResources:: | 1048 base::Bind(&LayerTreeHostContextTestDontUseLostResources:: |
1047 EmptyReleaseCallback))); | 1049 EmptyReleaseCallback))); |
1048 root->AddChild(texture); | 1050 root->AddChild(texture); |
1049 | 1051 |
1050 scoped_refptr<Layer> mask; | 1052 scoped_refptr<Layer> mask; |
1051 if (layer_tree_host()->settings().impl_side_painting) | 1053 if (layer_tree_host()->settings().impl_side_painting) |
1052 mask = PictureLayer::Create(&client_); | 1054 mask = PictureLayer::Create(layer_settings_, &client_); |
1053 else | 1055 else |
1054 mask = ContentLayer::Create(&client_); | 1056 mask = ContentLayer::Create(layer_settings_, &client_); |
1055 mask->SetBounds(gfx::Size(10, 10)); | 1057 mask->SetBounds(gfx::Size(10, 10)); |
1056 | 1058 |
1057 scoped_refptr<Layer> layer_with_mask; | 1059 scoped_refptr<Layer> layer_with_mask; |
1058 if (layer_tree_host()->settings().impl_side_painting) | 1060 if (layer_tree_host()->settings().impl_side_painting) |
1059 layer_with_mask = PictureLayer::Create(&client_); | 1061 layer_with_mask = PictureLayer::Create(layer_settings_, &client_); |
1060 else | 1062 else |
1061 layer_with_mask = ContentLayer::Create(&client_); | 1063 layer_with_mask = ContentLayer::Create(layer_settings_, &client_); |
1062 layer_with_mask->SetBounds(gfx::Size(10, 10)); | 1064 layer_with_mask->SetBounds(gfx::Size(10, 10)); |
1063 layer_with_mask->SetIsDrawable(true); | 1065 layer_with_mask->SetIsDrawable(true); |
1064 layer_with_mask->SetMaskLayer(mask.get()); | 1066 layer_with_mask->SetMaskLayer(mask.get()); |
1065 root->AddChild(layer_with_mask); | 1067 root->AddChild(layer_with_mask); |
1066 | 1068 |
1067 scoped_refptr<VideoLayer> video_color = | 1069 scoped_refptr<VideoLayer> video_color = VideoLayer::Create( |
1068 VideoLayer::Create(&color_frame_provider_, media::VIDEO_ROTATION_0); | 1070 layer_settings_, &color_frame_provider_, media::VIDEO_ROTATION_0); |
1069 video_color->SetBounds(gfx::Size(10, 10)); | 1071 video_color->SetBounds(gfx::Size(10, 10)); |
1070 video_color->SetIsDrawable(true); | 1072 video_color->SetIsDrawable(true); |
1071 root->AddChild(video_color); | 1073 root->AddChild(video_color); |
1072 | 1074 |
1073 scoped_refptr<VideoLayer> video_hw = | 1075 scoped_refptr<VideoLayer> video_hw = VideoLayer::Create( |
1074 VideoLayer::Create(&hw_frame_provider_, media::VIDEO_ROTATION_0); | 1076 layer_settings_, &hw_frame_provider_, media::VIDEO_ROTATION_0); |
1075 video_hw->SetBounds(gfx::Size(10, 10)); | 1077 video_hw->SetBounds(gfx::Size(10, 10)); |
1076 video_hw->SetIsDrawable(true); | 1078 video_hw->SetIsDrawable(true); |
1077 root->AddChild(video_hw); | 1079 root->AddChild(video_hw); |
1078 | 1080 |
1079 scoped_refptr<VideoLayer> video_scaled_hw = | 1081 scoped_refptr<VideoLayer> video_scaled_hw = VideoLayer::Create( |
1080 VideoLayer::Create(&scaled_hw_frame_provider_, media::VIDEO_ROTATION_0); | 1082 layer_settings_, &scaled_hw_frame_provider_, media::VIDEO_ROTATION_0); |
1081 video_scaled_hw->SetBounds(gfx::Size(10, 10)); | 1083 video_scaled_hw->SetBounds(gfx::Size(10, 10)); |
1082 video_scaled_hw->SetIsDrawable(true); | 1084 video_scaled_hw->SetIsDrawable(true); |
1083 root->AddChild(video_scaled_hw); | 1085 root->AddChild(video_scaled_hw); |
1084 | 1086 |
1085 color_video_frame_ = VideoFrame::CreateColorFrame( | 1087 color_video_frame_ = VideoFrame::CreateColorFrame( |
1086 gfx::Size(4, 4), 0x80, 0x80, 0x80, base::TimeDelta()); | 1088 gfx::Size(4, 4), 0x80, 0x80, 0x80, base::TimeDelta()); |
1087 hw_video_frame_ = VideoFrame::WrapNativeTexture( | 1089 hw_video_frame_ = VideoFrame::WrapNativeTexture( |
1088 gpu::MailboxHolder(mailbox, GL_TEXTURE_2D, sync_point), | 1090 gpu::MailboxHolder(mailbox, GL_TEXTURE_2D, sync_point), |
1089 media::VideoFrame::ReleaseMailboxCB(), gfx::Size(4, 4), | 1091 media::VideoFrame::ReleaseMailboxCB(), gfx::Size(4, 4), |
1090 gfx::Rect(0, 0, 4, 4), gfx::Size(4, 4), base::TimeDelta(), | 1092 gfx::Rect(0, 0, 4, 4), gfx::Size(4, 4), base::TimeDelta(), |
1091 false /* allow_overlay */, true /* has_alpha */); | 1093 false /* allow_overlay */, true /* has_alpha */); |
1092 scaled_hw_video_frame_ = VideoFrame::WrapNativeTexture( | 1094 scaled_hw_video_frame_ = VideoFrame::WrapNativeTexture( |
1093 gpu::MailboxHolder(mailbox, GL_TEXTURE_2D, sync_point), | 1095 gpu::MailboxHolder(mailbox, GL_TEXTURE_2D, sync_point), |
1094 media::VideoFrame::ReleaseMailboxCB(), gfx::Size(4, 4), | 1096 media::VideoFrame::ReleaseMailboxCB(), gfx::Size(4, 4), |
1095 gfx::Rect(0, 0, 3, 2), gfx::Size(4, 4), base::TimeDelta(), | 1097 gfx::Rect(0, 0, 3, 2), gfx::Size(4, 4), base::TimeDelta(), |
1096 false /* allow_overlay */, true /* has_alpha */); | 1098 false /* allow_overlay */, true /* has_alpha */); |
1097 | 1099 |
1098 color_frame_provider_.set_frame(color_video_frame_); | 1100 color_frame_provider_.set_frame(color_video_frame_); |
1099 hw_frame_provider_.set_frame(hw_video_frame_); | 1101 hw_frame_provider_.set_frame(hw_video_frame_); |
1100 scaled_hw_frame_provider_.set_frame(scaled_hw_video_frame_); | 1102 scaled_hw_frame_provider_.set_frame(scaled_hw_video_frame_); |
1101 | 1103 |
1102 if (!delegating_renderer()) { | 1104 if (!delegating_renderer()) { |
1103 // TODO(danakj): IOSurface layer can not be transported. crbug.com/239335 | 1105 // TODO(danakj): IOSurface layer can not be transported. crbug.com/239335 |
1104 scoped_refptr<IOSurfaceLayer> io_surface = IOSurfaceLayer::Create(); | 1106 scoped_refptr<IOSurfaceLayer> io_surface = |
| 1107 IOSurfaceLayer::Create(layer_settings_); |
1105 io_surface->SetBounds(gfx::Size(10, 10)); | 1108 io_surface->SetBounds(gfx::Size(10, 10)); |
1106 io_surface->SetIsDrawable(true); | 1109 io_surface->SetIsDrawable(true); |
1107 io_surface->SetIOSurfaceProperties(1, gfx::Size(10, 10)); | 1110 io_surface->SetIOSurfaceProperties(1, gfx::Size(10, 10)); |
1108 root->AddChild(io_surface); | 1111 root->AddChild(io_surface); |
1109 } | 1112 } |
1110 | 1113 |
1111 // Enable the hud. | 1114 // Enable the hud. |
1112 LayerTreeDebugState debug_state; | 1115 LayerTreeDebugState debug_state; |
1113 debug_state.show_property_changed_rects = true; | 1116 debug_state.show_property_changed_rects = true; |
1114 layer_tree_host()->SetDebugState(debug_state); | 1117 layer_tree_host()->SetDebugState(debug_state); |
1115 | 1118 |
1116 scoped_refptr<PaintedScrollbarLayer> scrollbar = | 1119 scoped_refptr<PaintedScrollbarLayer> scrollbar = |
1117 PaintedScrollbarLayer::Create( | 1120 PaintedScrollbarLayer::Create( |
1118 scoped_ptr<Scrollbar>(new FakeScrollbar).Pass(), layer->id()); | 1121 layer_settings_, scoped_ptr<Scrollbar>(new FakeScrollbar).Pass(), |
| 1122 layer->id()); |
1119 scrollbar->SetBounds(gfx::Size(10, 10)); | 1123 scrollbar->SetBounds(gfx::Size(10, 10)); |
1120 scrollbar->SetIsDrawable(true); | 1124 scrollbar->SetIsDrawable(true); |
1121 root->AddChild(scrollbar); | 1125 root->AddChild(scrollbar); |
1122 | 1126 |
1123 layer_tree_host()->SetRootLayer(root); | 1127 layer_tree_host()->SetRootLayer(root); |
1124 LayerTreeHostContextTest::SetupTree(); | 1128 LayerTreeHostContextTest::SetupTree(); |
1125 } | 1129 } |
1126 | 1130 |
1127 void BeginTest() override { PostSetNeedsCommitToMainThread(); } | 1131 void BeginTest() override { PostSetNeedsCommitToMainThread(); } |
1128 | 1132 |
(...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1185 delegated_resource_collection_; | 1189 delegated_resource_collection_; |
1186 scoped_refptr<DelegatedFrameProvider> delegated_frame_provider_; | 1190 scoped_refptr<DelegatedFrameProvider> delegated_frame_provider_; |
1187 | 1191 |
1188 scoped_refptr<VideoFrame> color_video_frame_; | 1192 scoped_refptr<VideoFrame> color_video_frame_; |
1189 scoped_refptr<VideoFrame> hw_video_frame_; | 1193 scoped_refptr<VideoFrame> hw_video_frame_; |
1190 scoped_refptr<VideoFrame> scaled_hw_video_frame_; | 1194 scoped_refptr<VideoFrame> scaled_hw_video_frame_; |
1191 | 1195 |
1192 FakeVideoFrameProvider color_frame_provider_; | 1196 FakeVideoFrameProvider color_frame_provider_; |
1193 FakeVideoFrameProvider hw_frame_provider_; | 1197 FakeVideoFrameProvider hw_frame_provider_; |
1194 FakeVideoFrameProvider scaled_hw_frame_provider_; | 1198 FakeVideoFrameProvider scaled_hw_frame_provider_; |
| 1199 |
| 1200 LayerSettings layer_settings_; |
1195 }; | 1201 }; |
1196 | 1202 |
1197 SINGLE_AND_MULTI_THREAD_TEST_F(LayerTreeHostContextTestDontUseLostResources); | 1203 SINGLE_AND_MULTI_THREAD_TEST_F(LayerTreeHostContextTestDontUseLostResources); |
1198 | 1204 |
1199 class ImplSidePaintingLayerTreeHostContextTest | 1205 class ImplSidePaintingLayerTreeHostContextTest |
1200 : public LayerTreeHostContextTest { | 1206 : public LayerTreeHostContextTest { |
1201 public: | 1207 public: |
1202 void InitializeSettings(LayerTreeSettings* settings) override { | 1208 void InitializeSettings(LayerTreeSettings* settings) override { |
1203 settings->impl_side_painting = true; | 1209 settings->impl_side_painting = true; |
1204 } | 1210 } |
1205 }; | 1211 }; |
1206 | 1212 |
1207 class LayerTreeHostContextTestImplSidePainting | 1213 class LayerTreeHostContextTestImplSidePainting |
1208 : public ImplSidePaintingLayerTreeHostContextTest { | 1214 : public ImplSidePaintingLayerTreeHostContextTest { |
1209 public: | 1215 public: |
1210 void SetupTree() override { | 1216 void SetupTree() override { |
1211 scoped_refptr<Layer> root = Layer::Create(); | 1217 scoped_refptr<Layer> root = Layer::Create(layer_settings()); |
1212 root->SetBounds(gfx::Size(10, 10)); | 1218 root->SetBounds(gfx::Size(10, 10)); |
1213 root->SetIsDrawable(true); | 1219 root->SetIsDrawable(true); |
1214 | 1220 |
1215 scoped_refptr<PictureLayer> picture = PictureLayer::Create(&client_); | 1221 scoped_refptr<PictureLayer> picture = |
| 1222 PictureLayer::Create(layer_settings(), &client_); |
1216 picture->SetBounds(gfx::Size(10, 10)); | 1223 picture->SetBounds(gfx::Size(10, 10)); |
1217 picture->SetIsDrawable(true); | 1224 picture->SetIsDrawable(true); |
1218 root->AddChild(picture); | 1225 root->AddChild(picture); |
1219 | 1226 |
1220 layer_tree_host()->SetRootLayer(root); | 1227 layer_tree_host()->SetRootLayer(root); |
1221 LayerTreeHostContextTest::SetupTree(); | 1228 LayerTreeHostContextTest::SetupTree(); |
1222 } | 1229 } |
1223 | 1230 |
1224 void BeginTest() override { | 1231 void BeginTest() override { |
1225 times_to_lose_during_commit_ = 1; | 1232 times_to_lose_during_commit_ = 1; |
1226 PostSetNeedsCommitToMainThread(); | 1233 PostSetNeedsCommitToMainThread(); |
1227 } | 1234 } |
1228 | 1235 |
1229 void AfterTest() override {} | 1236 void AfterTest() override {} |
1230 | 1237 |
1231 void DidInitializeOutputSurface() override { EndTest(); } | 1238 void DidInitializeOutputSurface() override { EndTest(); } |
1232 | 1239 |
1233 private: | 1240 private: |
1234 FakeContentLayerClient client_; | 1241 FakeContentLayerClient client_; |
1235 }; | 1242 }; |
1236 | 1243 |
1237 MULTI_THREAD_TEST_F(LayerTreeHostContextTestImplSidePainting); | 1244 MULTI_THREAD_TEST_F(LayerTreeHostContextTestImplSidePainting); |
1238 | 1245 |
1239 class ScrollbarLayerLostContext : public LayerTreeHostContextTest { | 1246 class ScrollbarLayerLostContext : public LayerTreeHostContextTest { |
1240 public: | 1247 public: |
1241 ScrollbarLayerLostContext() : commits_(0) {} | 1248 ScrollbarLayerLostContext() : commits_(0) {} |
1242 | 1249 |
1243 void BeginTest() override { | 1250 void BeginTest() override { |
1244 scoped_refptr<Layer> scroll_layer = Layer::Create(); | 1251 scoped_refptr<Layer> scroll_layer = Layer::Create(layer_settings()); |
1245 scrollbar_layer_ = | 1252 scrollbar_layer_ = FakePaintedScrollbarLayer::Create( |
1246 FakePaintedScrollbarLayer::Create(false, true, scroll_layer->id()); | 1253 layer_settings(), false, true, scroll_layer->id()); |
1247 scrollbar_layer_->SetBounds(gfx::Size(10, 100)); | 1254 scrollbar_layer_->SetBounds(gfx::Size(10, 100)); |
1248 layer_tree_host()->root_layer()->AddChild(scrollbar_layer_); | 1255 layer_tree_host()->root_layer()->AddChild(scrollbar_layer_); |
1249 layer_tree_host()->root_layer()->AddChild(scroll_layer); | 1256 layer_tree_host()->root_layer()->AddChild(scroll_layer); |
1250 PostSetNeedsCommitToMainThread(); | 1257 PostSetNeedsCommitToMainThread(); |
1251 } | 1258 } |
1252 | 1259 |
1253 void AfterTest() override {} | 1260 void AfterTest() override {} |
1254 | 1261 |
1255 void CommitCompleteOnThread(LayerTreeHostImpl* impl) override { | 1262 void CommitCompleteOnThread(LayerTreeHostImpl* impl) override { |
1256 LayerTreeHostContextTest::CommitCompleteOnThread(impl); | 1263 LayerTreeHostContextTest::CommitCompleteOnThread(impl); |
(...skipping 425 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1682 SINGLE_AND_MULTI_THREAD_TEST_F(UIResourceLostEviction); | 1689 SINGLE_AND_MULTI_THREAD_TEST_F(UIResourceLostEviction); |
1683 | 1690 |
1684 class LayerTreeHostContextTestSurfaceCreateCallback | 1691 class LayerTreeHostContextTestSurfaceCreateCallback |
1685 : public LayerTreeHostContextTest { | 1692 : public LayerTreeHostContextTest { |
1686 public: | 1693 public: |
1687 LayerTreeHostContextTestSurfaceCreateCallback() | 1694 LayerTreeHostContextTestSurfaceCreateCallback() |
1688 : LayerTreeHostContextTest() {} | 1695 : LayerTreeHostContextTest() {} |
1689 | 1696 |
1690 void SetupTree() override { | 1697 void SetupTree() override { |
1691 if (layer_tree_host()->settings().impl_side_painting) { | 1698 if (layer_tree_host()->settings().impl_side_painting) { |
1692 picture_layer_ = FakePictureLayer::Create(&client_); | 1699 picture_layer_ = FakePictureLayer::Create(layer_settings(), &client_); |
1693 picture_layer_->SetBounds(gfx::Size(10, 20)); | 1700 picture_layer_->SetBounds(gfx::Size(10, 20)); |
1694 layer_tree_host()->SetRootLayer(picture_layer_); | 1701 layer_tree_host()->SetRootLayer(picture_layer_); |
1695 } else { | 1702 } else { |
1696 content_layer_ = FakeContentLayer::Create(&client_); | 1703 content_layer_ = FakeContentLayer::Create(layer_settings(), &client_); |
1697 content_layer_->SetBounds(gfx::Size(10, 20)); | 1704 content_layer_->SetBounds(gfx::Size(10, 20)); |
1698 layer_tree_host()->SetRootLayer(content_layer_); | 1705 layer_tree_host()->SetRootLayer(content_layer_); |
1699 } | 1706 } |
1700 | 1707 |
1701 LayerTreeHostContextTest::SetupTree(); | 1708 LayerTreeHostContextTest::SetupTree(); |
1702 } | 1709 } |
1703 | 1710 |
1704 void BeginTest() override { PostSetNeedsCommitToMainThread(); } | 1711 void BeginTest() override { PostSetNeedsCommitToMainThread(); } |
1705 | 1712 |
1706 void DidCommit() override { | 1713 void DidCommit() override { |
(...skipping 94 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1801 void AfterTest() override {} | 1808 void AfterTest() override {} |
1802 | 1809 |
1803 bool deferred_; | 1810 bool deferred_; |
1804 }; | 1811 }; |
1805 | 1812 |
1806 SINGLE_AND_MULTI_THREAD_TEST_F( | 1813 SINGLE_AND_MULTI_THREAD_TEST_F( |
1807 LayerTreeHostContextTestLoseAfterSendingBeginMainFrame); | 1814 LayerTreeHostContextTestLoseAfterSendingBeginMainFrame); |
1808 | 1815 |
1809 } // namespace | 1816 } // namespace |
1810 } // namespace cc | 1817 } // namespace cc |
OLD | NEW |