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 521 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
532 | 532 |
533 bool in_composite_; | 533 bool in_composite_; |
534 }; | 534 }; |
535 | 535 |
536 SINGLE_THREAD_NOIMPL_TEST_F(LayerTreeHostContextTestAvoidUnnecessaryComposite); | 536 SINGLE_THREAD_NOIMPL_TEST_F(LayerTreeHostContextTestAvoidUnnecessaryComposite); |
537 | 537 |
538 class LayerTreeHostContextTestLostContextSucceedsWithContent | 538 class LayerTreeHostContextTestLostContextSucceedsWithContent |
539 : public LayerTreeHostContextTestLostContextSucceeds { | 539 : public LayerTreeHostContextTestLostContextSucceeds { |
540 public: | 540 public: |
541 void SetupTree() override { | 541 void SetupTree() override { |
542 root_ = Layer::Create(); | 542 root_ = Layer::Create(layer_settings()); |
543 root_->SetBounds(gfx::Size(10, 10)); | 543 root_->SetBounds(gfx::Size(10, 10)); |
544 root_->SetIsDrawable(true); | 544 root_->SetIsDrawable(true); |
545 | 545 |
546 // Paint non-solid color. | 546 // Paint non-solid color. |
547 SkPaint paint; | 547 SkPaint paint; |
548 paint.setColor(SkColorSetARGB(100, 80, 200, 200)); | 548 paint.setColor(SkColorSetARGB(100, 80, 200, 200)); |
549 client_.add_draw_rect(gfx::Rect(0, 0, 5, 5), paint); | 549 client_.add_draw_rect(gfx::Rect(0, 0, 5, 5), paint); |
550 | 550 |
551 if (layer_tree_host()->settings().impl_side_painting) | 551 if (layer_tree_host()->settings().impl_side_painting) |
552 layer_ = FakePictureLayer::Create(&client_); | 552 layer_ = FakePictureLayer::Create(layer_settings(), &client_); |
553 else | 553 else |
554 layer_ = FakeContentLayer::Create(&client_); | 554 layer_ = FakeContentLayer::Create(layer_settings(), &client_); |
555 layer_->SetBounds(gfx::Size(10, 10)); | 555 layer_->SetBounds(gfx::Size(10, 10)); |
556 layer_->SetIsDrawable(true); | 556 layer_->SetIsDrawable(true); |
557 | 557 |
558 root_->AddChild(layer_); | 558 root_->AddChild(layer_); |
559 | 559 |
560 layer_tree_host()->SetRootLayer(root_); | 560 layer_tree_host()->SetRootLayer(root_); |
561 LayerTreeHostContextTest::SetupTree(); | 561 LayerTreeHostContextTest::SetupTree(); |
562 } | 562 } |
563 | 563 |
564 void InvalidateAndSetNeedsCommit() override { | 564 void InvalidateAndSetNeedsCommit() override { |
(...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
630 num_commits_(0), | 630 num_commits_(0), |
631 lost_context_(false) {} | 631 lost_context_(false) {} |
632 | 632 |
633 void SetupTree() override { | 633 void SetupTree() override { |
634 // Paint non-solid color. | 634 // Paint non-solid color. |
635 SkPaint paint; | 635 SkPaint paint; |
636 paint.setColor(SkColorSetARGB(100, 80, 200, 200)); | 636 paint.setColor(SkColorSetARGB(100, 80, 200, 200)); |
637 client_.add_draw_rect(gfx::Rect(0, 0, 5, 5), paint); | 637 client_.add_draw_rect(gfx::Rect(0, 0, 5, 5), paint); |
638 | 638 |
639 if (layer_tree_host()->settings().impl_side_painting) { | 639 if (layer_tree_host()->settings().impl_side_painting) { |
640 picture_layer_ = FakePictureLayer::Create(&client_); | 640 picture_layer_ = FakePictureLayer::Create(layer_settings(), &client_); |
641 picture_layer_->SetBounds(gfx::Size(10, 20)); | 641 picture_layer_->SetBounds(gfx::Size(10, 20)); |
642 layer_tree_host()->SetRootLayer(picture_layer_); | 642 layer_tree_host()->SetRootLayer(picture_layer_); |
643 } else { | 643 } else { |
644 content_layer_ = FakeContentLayer::Create(&client_); | 644 content_layer_ = FakeContentLayer::Create(layer_settings(), &client_); |
645 content_layer_->SetBounds(gfx::Size(10, 20)); | 645 content_layer_->SetBounds(gfx::Size(10, 20)); |
646 layer_tree_host()->SetRootLayer(content_layer_); | 646 layer_tree_host()->SetRootLayer(content_layer_); |
647 } | 647 } |
648 | 648 |
649 LayerTreeHostContextTest::SetupTree(); | 649 LayerTreeHostContextTest::SetupTree(); |
650 } | 650 } |
651 | 651 |
652 void BeginTest() override { PostSetNeedsCommitToMainThread(); } | 652 void BeginTest() override { PostSetNeedsCommitToMainThread(); } |
653 | 653 |
654 void PostEvictTextures() { | 654 void PostEvictTextures() { |
(...skipping 146 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
801 LayerTreeHostContextTest::CreateContext3d(); | 801 LayerTreeHostContextTest::CreateContext3d(); |
802 if (times_to_lose_on_end_query_) { | 802 if (times_to_lose_on_end_query_) { |
803 --times_to_lose_on_end_query_; | 803 --times_to_lose_on_end_query_; |
804 context->set_times_end_query_succeeds(5); | 804 context->set_times_end_query_succeeds(5); |
805 } | 805 } |
806 return context.Pass(); | 806 return context.Pass(); |
807 } | 807 } |
808 | 808 |
809 void SetupTree() override { | 809 void SetupTree() override { |
810 if (layer_tree_host()->settings().impl_side_painting) | 810 if (layer_tree_host()->settings().impl_side_painting) |
811 parent_ = FakePictureLayer::Create(&client_); | 811 parent_ = FakePictureLayer::Create(layer_settings(), &client_); |
812 else | 812 else |
813 parent_ = FakeContentLayer::Create(&client_); | 813 parent_ = FakeContentLayer::Create(layer_settings(), &client_); |
814 | 814 |
815 parent_->SetBounds(gfx::Size(num_children_, 1)); | 815 parent_->SetBounds(gfx::Size(num_children_, 1)); |
816 | 816 |
817 for (int i = 0; i < num_children_; i++) { | 817 for (int i = 0; i < num_children_; i++) { |
818 scoped_refptr<Layer> child; | 818 scoped_refptr<Layer> child; |
819 if (layer_tree_host()->settings().impl_side_painting) | 819 if (layer_tree_host()->settings().impl_side_painting) |
820 child = FakePictureLayer::Create(&client_); | 820 child = FakePictureLayer::Create(layer_settings(), &client_); |
821 else | 821 else |
822 child = FakeContentLayer::Create(&client_); | 822 child = FakeContentLayer::Create(layer_settings(), &client_); |
823 child->SetPosition(gfx::PointF(i, 0.f)); | 823 child->SetPosition(gfx::PointF(i, 0.f)); |
824 child->SetBounds(gfx::Size(1, 1)); | 824 child->SetBounds(gfx::Size(1, 1)); |
825 parent_->AddChild(child); | 825 parent_->AddChild(child); |
826 } | 826 } |
827 | 827 |
828 layer_tree_host()->SetRootLayer(parent_); | 828 layer_tree_host()->SetRootLayer(parent_); |
829 LayerTreeHostContextTest::SetupTree(); | 829 LayerTreeHostContextTest::SetupTree(); |
830 } | 830 } |
831 | 831 |
832 void BeginTest() override { PostSetNeedsCommitToMainThread(); } | 832 void BeginTest() override { PostSetNeedsCommitToMainThread(); } |
(...skipping 15 matching lines...) Expand all Loading... |
848 SINGLE_AND_MULTI_THREAD_NOIMPL_TEST_F( | 848 SINGLE_AND_MULTI_THREAD_NOIMPL_TEST_F( |
849 LayerTreeHostContextTestLostContextWhileUpdatingResources); | 849 LayerTreeHostContextTestLostContextWhileUpdatingResources); |
850 | 850 |
851 class LayerTreeHostContextTestLayersNotified : public LayerTreeHostContextTest { | 851 class LayerTreeHostContextTestLayersNotified : public LayerTreeHostContextTest { |
852 public: | 852 public: |
853 LayerTreeHostContextTestLayersNotified() | 853 LayerTreeHostContextTestLayersNotified() |
854 : LayerTreeHostContextTest(), num_commits_(0) {} | 854 : LayerTreeHostContextTest(), num_commits_(0) {} |
855 | 855 |
856 void SetupTree() override { | 856 void SetupTree() override { |
857 if (layer_tree_host()->settings().impl_side_painting) { | 857 if (layer_tree_host()->settings().impl_side_painting) { |
858 root_ = FakePictureLayer::Create(&client_); | 858 root_ = FakePictureLayer::Create(layer_settings(), &client_); |
859 child_ = FakePictureLayer::Create(&client_); | 859 child_ = FakePictureLayer::Create(layer_settings(), &client_); |
860 grandchild_ = FakePictureLayer::Create(&client_); | 860 grandchild_ = FakePictureLayer::Create(layer_settings(), &client_); |
861 } else { | 861 } else { |
862 root_ = FakeContentLayer::Create(&client_); | 862 root_ = FakeContentLayer::Create(layer_settings(), &client_); |
863 child_ = FakeContentLayer::Create(&client_); | 863 child_ = FakeContentLayer::Create(layer_settings(), &client_); |
864 grandchild_ = FakeContentLayer::Create(&client_); | 864 grandchild_ = FakeContentLayer::Create(layer_settings(), &client_); |
865 } | 865 } |
866 | 866 |
867 root_->AddChild(child_); | 867 root_->AddChild(child_); |
868 child_->AddChild(grandchild_); | 868 child_->AddChild(grandchild_); |
869 | 869 |
870 layer_tree_host()->SetRootLayer(root_); | 870 layer_tree_host()->SetRootLayer(root_); |
871 LayerTreeHostContextTest::SetupTree(); | 871 LayerTreeHostContextTest::SetupTree(); |
872 } | 872 } |
873 | 873 |
874 void BeginTest() override { PostSetNeedsCommitToMainThread(); } | 874 void BeginTest() override { PostSetNeedsCommitToMainThread(); } |
(...skipping 127 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1002 child_resource_provider_->CreateResource( | 1002 child_resource_provider_->CreateResource( |
1003 gfx::Size(4, 4), GL_CLAMP_TO_EDGE, | 1003 gfx::Size(4, 4), GL_CLAMP_TO_EDGE, |
1004 ResourceProvider::TEXTURE_HINT_IMMUTABLE, RGBA_8888); | 1004 ResourceProvider::TEXTURE_HINT_IMMUTABLE, RGBA_8888); |
1005 ResourceProvider::ScopedWriteLockGL lock(child_resource_provider_.get(), | 1005 ResourceProvider::ScopedWriteLockGL lock(child_resource_provider_.get(), |
1006 resource); | 1006 resource); |
1007 | 1007 |
1008 gpu::Mailbox mailbox; | 1008 gpu::Mailbox mailbox; |
1009 gl->GenMailboxCHROMIUM(mailbox.name); | 1009 gl->GenMailboxCHROMIUM(mailbox.name); |
1010 GLuint sync_point = gl->InsertSyncPointCHROMIUM(); | 1010 GLuint sync_point = gl->InsertSyncPointCHROMIUM(); |
1011 | 1011 |
1012 scoped_refptr<Layer> root = Layer::Create(); | 1012 scoped_refptr<Layer> root = Layer::Create(layer_settings()); |
1013 root->SetBounds(gfx::Size(10, 10)); | 1013 root->SetBounds(gfx::Size(10, 10)); |
1014 root->SetIsDrawable(true); | 1014 root->SetIsDrawable(true); |
1015 | 1015 |
1016 scoped_refptr<FakeDelegatedRendererLayer> delegated = | 1016 scoped_refptr<FakeDelegatedRendererLayer> delegated = |
1017 FakeDelegatedRendererLayer::Create(delegated_frame_provider_.get()); | 1017 FakeDelegatedRendererLayer::Create(layer_settings(), |
| 1018 delegated_frame_provider_.get()); |
1018 delegated->SetBounds(gfx::Size(10, 10)); | 1019 delegated->SetBounds(gfx::Size(10, 10)); |
1019 delegated->SetIsDrawable(true); | 1020 delegated->SetIsDrawable(true); |
1020 root->AddChild(delegated); | 1021 root->AddChild(delegated); |
1021 | 1022 |
1022 scoped_refptr<Layer> layer; | 1023 scoped_refptr<Layer> layer; |
1023 if (layer_tree_host()->settings().impl_side_painting) | 1024 if (layer_tree_host()->settings().impl_side_painting) |
1024 layer = PictureLayer::Create(&client_); | 1025 layer = PictureLayer::Create(layer_settings(), &client_); |
1025 else | 1026 else |
1026 layer = ContentLayer::Create(&client_); | 1027 layer = ContentLayer::Create(layer_settings(), &client_); |
1027 layer->SetBounds(gfx::Size(10, 10)); | 1028 layer->SetBounds(gfx::Size(10, 10)); |
1028 layer->SetIsDrawable(true); | 1029 layer->SetIsDrawable(true); |
1029 root->AddChild(layer); | 1030 root->AddChild(layer); |
1030 | 1031 |
1031 scoped_refptr<TextureLayer> texture = TextureLayer::CreateForMailbox(NULL); | 1032 scoped_refptr<TextureLayer> texture = |
| 1033 TextureLayer::CreateForMailbox(layer_settings_, NULL); |
1032 texture->SetBounds(gfx::Size(10, 10)); | 1034 texture->SetBounds(gfx::Size(10, 10)); |
1033 texture->SetIsDrawable(true); | 1035 texture->SetIsDrawable(true); |
1034 texture->SetTextureMailbox( | 1036 texture->SetTextureMailbox( |
1035 TextureMailbox(mailbox, GL_TEXTURE_2D, sync_point), | 1037 TextureMailbox(mailbox, GL_TEXTURE_2D, sync_point), |
1036 SingleReleaseCallback::Create( | 1038 SingleReleaseCallback::Create( |
1037 base::Bind(&LayerTreeHostContextTestDontUseLostResources:: | 1039 base::Bind(&LayerTreeHostContextTestDontUseLostResources:: |
1038 EmptyReleaseCallback))); | 1040 EmptyReleaseCallback))); |
1039 root->AddChild(texture); | 1041 root->AddChild(texture); |
1040 | 1042 |
1041 scoped_refptr<Layer> mask; | 1043 scoped_refptr<Layer> mask; |
1042 if (layer_tree_host()->settings().impl_side_painting) | 1044 if (layer_tree_host()->settings().impl_side_painting) |
1043 mask = PictureLayer::Create(&client_); | 1045 mask = PictureLayer::Create(layer_settings_, &client_); |
1044 else | 1046 else |
1045 mask = ContentLayer::Create(&client_); | 1047 mask = ContentLayer::Create(layer_settings_, &client_); |
1046 mask->SetBounds(gfx::Size(10, 10)); | 1048 mask->SetBounds(gfx::Size(10, 10)); |
1047 | 1049 |
1048 scoped_refptr<Layer> layer_with_mask; | 1050 scoped_refptr<Layer> layer_with_mask; |
1049 if (layer_tree_host()->settings().impl_side_painting) | 1051 if (layer_tree_host()->settings().impl_side_painting) |
1050 layer_with_mask = PictureLayer::Create(&client_); | 1052 layer_with_mask = PictureLayer::Create(layer_settings_, &client_); |
1051 else | 1053 else |
1052 layer_with_mask = ContentLayer::Create(&client_); | 1054 layer_with_mask = ContentLayer::Create(layer_settings_, &client_); |
1053 layer_with_mask->SetBounds(gfx::Size(10, 10)); | 1055 layer_with_mask->SetBounds(gfx::Size(10, 10)); |
1054 layer_with_mask->SetIsDrawable(true); | 1056 layer_with_mask->SetIsDrawable(true); |
1055 layer_with_mask->SetMaskLayer(mask.get()); | 1057 layer_with_mask->SetMaskLayer(mask.get()); |
1056 root->AddChild(layer_with_mask); | 1058 root->AddChild(layer_with_mask); |
1057 | 1059 |
1058 scoped_refptr<VideoLayer> video_color = | 1060 scoped_refptr<VideoLayer> video_color = VideoLayer::Create( |
1059 VideoLayer::Create(&color_frame_provider_, media::VIDEO_ROTATION_0); | 1061 layer_settings_, &color_frame_provider_, media::VIDEO_ROTATION_0); |
1060 video_color->SetBounds(gfx::Size(10, 10)); | 1062 video_color->SetBounds(gfx::Size(10, 10)); |
1061 video_color->SetIsDrawable(true); | 1063 video_color->SetIsDrawable(true); |
1062 root->AddChild(video_color); | 1064 root->AddChild(video_color); |
1063 | 1065 |
1064 scoped_refptr<VideoLayer> video_hw = | 1066 scoped_refptr<VideoLayer> video_hw = VideoLayer::Create( |
1065 VideoLayer::Create(&hw_frame_provider_, media::VIDEO_ROTATION_0); | 1067 layer_settings_, &hw_frame_provider_, media::VIDEO_ROTATION_0); |
1066 video_hw->SetBounds(gfx::Size(10, 10)); | 1068 video_hw->SetBounds(gfx::Size(10, 10)); |
1067 video_hw->SetIsDrawable(true); | 1069 video_hw->SetIsDrawable(true); |
1068 root->AddChild(video_hw); | 1070 root->AddChild(video_hw); |
1069 | 1071 |
1070 scoped_refptr<VideoLayer> video_scaled_hw = | 1072 scoped_refptr<VideoLayer> video_scaled_hw = VideoLayer::Create( |
1071 VideoLayer::Create(&scaled_hw_frame_provider_, media::VIDEO_ROTATION_0); | 1073 layer_settings_, &scaled_hw_frame_provider_, media::VIDEO_ROTATION_0); |
1072 video_scaled_hw->SetBounds(gfx::Size(10, 10)); | 1074 video_scaled_hw->SetBounds(gfx::Size(10, 10)); |
1073 video_scaled_hw->SetIsDrawable(true); | 1075 video_scaled_hw->SetIsDrawable(true); |
1074 root->AddChild(video_scaled_hw); | 1076 root->AddChild(video_scaled_hw); |
1075 | 1077 |
1076 color_video_frame_ = VideoFrame::CreateColorFrame( | 1078 color_video_frame_ = VideoFrame::CreateColorFrame( |
1077 gfx::Size(4, 4), 0x80, 0x80, 0x80, base::TimeDelta()); | 1079 gfx::Size(4, 4), 0x80, 0x80, 0x80, base::TimeDelta()); |
1078 hw_video_frame_ = VideoFrame::WrapNativeTexture( | 1080 hw_video_frame_ = VideoFrame::WrapNativeTexture( |
1079 make_scoped_ptr( | 1081 make_scoped_ptr( |
1080 new gpu::MailboxHolder(mailbox, GL_TEXTURE_2D, sync_point)), | 1082 new gpu::MailboxHolder(mailbox, GL_TEXTURE_2D, sync_point)), |
1081 media::VideoFrame::ReleaseMailboxCB(), gfx::Size(4, 4), | 1083 media::VideoFrame::ReleaseMailboxCB(), gfx::Size(4, 4), |
1082 gfx::Rect(0, 0, 4, 4), gfx::Size(4, 4), base::TimeDelta(), false); | 1084 gfx::Rect(0, 0, 4, 4), gfx::Size(4, 4), base::TimeDelta(), false); |
1083 scaled_hw_video_frame_ = VideoFrame::WrapNativeTexture( | 1085 scaled_hw_video_frame_ = VideoFrame::WrapNativeTexture( |
1084 make_scoped_ptr( | 1086 make_scoped_ptr( |
1085 new gpu::MailboxHolder(mailbox, GL_TEXTURE_2D, sync_point)), | 1087 new gpu::MailboxHolder(mailbox, GL_TEXTURE_2D, sync_point)), |
1086 media::VideoFrame::ReleaseMailboxCB(), gfx::Size(4, 4), | 1088 media::VideoFrame::ReleaseMailboxCB(), gfx::Size(4, 4), |
1087 gfx::Rect(0, 0, 3, 2), gfx::Size(4, 4), base::TimeDelta(), false); | 1089 gfx::Rect(0, 0, 3, 2), gfx::Size(4, 4), base::TimeDelta(), false); |
1088 | 1090 |
1089 color_frame_provider_.set_frame(color_video_frame_); | 1091 color_frame_provider_.set_frame(color_video_frame_); |
1090 hw_frame_provider_.set_frame(hw_video_frame_); | 1092 hw_frame_provider_.set_frame(hw_video_frame_); |
1091 scaled_hw_frame_provider_.set_frame(scaled_hw_video_frame_); | 1093 scaled_hw_frame_provider_.set_frame(scaled_hw_video_frame_); |
1092 | 1094 |
1093 if (!delegating_renderer()) { | 1095 if (!delegating_renderer()) { |
1094 // TODO(danakj): IOSurface layer can not be transported. crbug.com/239335 | 1096 // TODO(danakj): IOSurface layer can not be transported. crbug.com/239335 |
1095 scoped_refptr<IOSurfaceLayer> io_surface = IOSurfaceLayer::Create(); | 1097 scoped_refptr<IOSurfaceLayer> io_surface = |
| 1098 IOSurfaceLayer::Create(layer_settings_); |
1096 io_surface->SetBounds(gfx::Size(10, 10)); | 1099 io_surface->SetBounds(gfx::Size(10, 10)); |
1097 io_surface->SetIsDrawable(true); | 1100 io_surface->SetIsDrawable(true); |
1098 io_surface->SetIOSurfaceProperties(1, gfx::Size(10, 10)); | 1101 io_surface->SetIOSurfaceProperties(1, gfx::Size(10, 10)); |
1099 root->AddChild(io_surface); | 1102 root->AddChild(io_surface); |
1100 } | 1103 } |
1101 | 1104 |
1102 // Enable the hud. | 1105 // Enable the hud. |
1103 LayerTreeDebugState debug_state; | 1106 LayerTreeDebugState debug_state; |
1104 debug_state.show_property_changed_rects = true; | 1107 debug_state.show_property_changed_rects = true; |
1105 layer_tree_host()->SetDebugState(debug_state); | 1108 layer_tree_host()->SetDebugState(debug_state); |
1106 | 1109 |
1107 scoped_refptr<PaintedScrollbarLayer> scrollbar = | 1110 scoped_refptr<PaintedScrollbarLayer> scrollbar = |
1108 PaintedScrollbarLayer::Create( | 1111 PaintedScrollbarLayer::Create( |
1109 scoped_ptr<Scrollbar>(new FakeScrollbar).Pass(), layer->id()); | 1112 layer_settings_, scoped_ptr<Scrollbar>(new FakeScrollbar).Pass(), |
| 1113 layer->id()); |
1110 scrollbar->SetBounds(gfx::Size(10, 10)); | 1114 scrollbar->SetBounds(gfx::Size(10, 10)); |
1111 scrollbar->SetIsDrawable(true); | 1115 scrollbar->SetIsDrawable(true); |
1112 root->AddChild(scrollbar); | 1116 root->AddChild(scrollbar); |
1113 | 1117 |
1114 layer_tree_host()->SetRootLayer(root); | 1118 layer_tree_host()->SetRootLayer(root); |
1115 LayerTreeHostContextTest::SetupTree(); | 1119 LayerTreeHostContextTest::SetupTree(); |
1116 } | 1120 } |
1117 | 1121 |
1118 void BeginTest() override { PostSetNeedsCommitToMainThread(); } | 1122 void BeginTest() override { PostSetNeedsCommitToMainThread(); } |
1119 | 1123 |
(...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1176 delegated_resource_collection_; | 1180 delegated_resource_collection_; |
1177 scoped_refptr<DelegatedFrameProvider> delegated_frame_provider_; | 1181 scoped_refptr<DelegatedFrameProvider> delegated_frame_provider_; |
1178 | 1182 |
1179 scoped_refptr<VideoFrame> color_video_frame_; | 1183 scoped_refptr<VideoFrame> color_video_frame_; |
1180 scoped_refptr<VideoFrame> hw_video_frame_; | 1184 scoped_refptr<VideoFrame> hw_video_frame_; |
1181 scoped_refptr<VideoFrame> scaled_hw_video_frame_; | 1185 scoped_refptr<VideoFrame> scaled_hw_video_frame_; |
1182 | 1186 |
1183 FakeVideoFrameProvider color_frame_provider_; | 1187 FakeVideoFrameProvider color_frame_provider_; |
1184 FakeVideoFrameProvider hw_frame_provider_; | 1188 FakeVideoFrameProvider hw_frame_provider_; |
1185 FakeVideoFrameProvider scaled_hw_frame_provider_; | 1189 FakeVideoFrameProvider scaled_hw_frame_provider_; |
| 1190 |
| 1191 LayerSettings layer_settings_; |
1186 }; | 1192 }; |
1187 | 1193 |
1188 SINGLE_AND_MULTI_THREAD_TEST_F(LayerTreeHostContextTestDontUseLostResources); | 1194 SINGLE_AND_MULTI_THREAD_TEST_F(LayerTreeHostContextTestDontUseLostResources); |
1189 | 1195 |
1190 class ImplSidePaintingLayerTreeHostContextTest | 1196 class ImplSidePaintingLayerTreeHostContextTest |
1191 : public LayerTreeHostContextTest { | 1197 : public LayerTreeHostContextTest { |
1192 public: | 1198 public: |
1193 void InitializeSettings(LayerTreeSettings* settings) override { | 1199 void InitializeSettings(LayerTreeSettings* settings) override { |
1194 settings->impl_side_painting = true; | 1200 settings->impl_side_painting = true; |
1195 } | 1201 } |
1196 }; | 1202 }; |
1197 | 1203 |
1198 class LayerTreeHostContextTestImplSidePainting | 1204 class LayerTreeHostContextTestImplSidePainting |
1199 : public ImplSidePaintingLayerTreeHostContextTest { | 1205 : public ImplSidePaintingLayerTreeHostContextTest { |
1200 public: | 1206 public: |
1201 void SetupTree() override { | 1207 void SetupTree() override { |
1202 scoped_refptr<Layer> root = Layer::Create(); | 1208 scoped_refptr<Layer> root = Layer::Create(layer_settings()); |
1203 root->SetBounds(gfx::Size(10, 10)); | 1209 root->SetBounds(gfx::Size(10, 10)); |
1204 root->SetIsDrawable(true); | 1210 root->SetIsDrawable(true); |
1205 | 1211 |
1206 scoped_refptr<PictureLayer> picture = PictureLayer::Create(&client_); | 1212 scoped_refptr<PictureLayer> picture = |
| 1213 PictureLayer::Create(layer_settings(), &client_); |
1207 picture->SetBounds(gfx::Size(10, 10)); | 1214 picture->SetBounds(gfx::Size(10, 10)); |
1208 picture->SetIsDrawable(true); | 1215 picture->SetIsDrawable(true); |
1209 root->AddChild(picture); | 1216 root->AddChild(picture); |
1210 | 1217 |
1211 layer_tree_host()->SetRootLayer(root); | 1218 layer_tree_host()->SetRootLayer(root); |
1212 LayerTreeHostContextTest::SetupTree(); | 1219 LayerTreeHostContextTest::SetupTree(); |
1213 } | 1220 } |
1214 | 1221 |
1215 void BeginTest() override { | 1222 void BeginTest() override { |
1216 times_to_lose_during_commit_ = 1; | 1223 times_to_lose_during_commit_ = 1; |
1217 PostSetNeedsCommitToMainThread(); | 1224 PostSetNeedsCommitToMainThread(); |
1218 } | 1225 } |
1219 | 1226 |
1220 void AfterTest() override {} | 1227 void AfterTest() override {} |
1221 | 1228 |
1222 void DidInitializeOutputSurface() override { EndTest(); } | 1229 void DidInitializeOutputSurface() override { EndTest(); } |
1223 | 1230 |
1224 private: | 1231 private: |
1225 FakeContentLayerClient client_; | 1232 FakeContentLayerClient client_; |
1226 }; | 1233 }; |
1227 | 1234 |
1228 MULTI_THREAD_TEST_F(LayerTreeHostContextTestImplSidePainting); | 1235 MULTI_THREAD_TEST_F(LayerTreeHostContextTestImplSidePainting); |
1229 | 1236 |
1230 class ScrollbarLayerLostContext : public LayerTreeHostContextTest { | 1237 class ScrollbarLayerLostContext : public LayerTreeHostContextTest { |
1231 public: | 1238 public: |
1232 ScrollbarLayerLostContext() : commits_(0) {} | 1239 ScrollbarLayerLostContext() : commits_(0) {} |
1233 | 1240 |
1234 void BeginTest() override { | 1241 void BeginTest() override { |
1235 scoped_refptr<Layer> scroll_layer = Layer::Create(); | 1242 scoped_refptr<Layer> scroll_layer = Layer::Create(layer_settings()); |
1236 scrollbar_layer_ = | 1243 scrollbar_layer_ = FakePaintedScrollbarLayer::Create( |
1237 FakePaintedScrollbarLayer::Create(false, true, scroll_layer->id()); | 1244 layer_settings(), false, true, scroll_layer->id()); |
1238 scrollbar_layer_->SetBounds(gfx::Size(10, 100)); | 1245 scrollbar_layer_->SetBounds(gfx::Size(10, 100)); |
1239 layer_tree_host()->root_layer()->AddChild(scrollbar_layer_); | 1246 layer_tree_host()->root_layer()->AddChild(scrollbar_layer_); |
1240 layer_tree_host()->root_layer()->AddChild(scroll_layer); | 1247 layer_tree_host()->root_layer()->AddChild(scroll_layer); |
1241 PostSetNeedsCommitToMainThread(); | 1248 PostSetNeedsCommitToMainThread(); |
1242 } | 1249 } |
1243 | 1250 |
1244 void AfterTest() override {} | 1251 void AfterTest() override {} |
1245 | 1252 |
1246 void CommitCompleteOnThread(LayerTreeHostImpl* impl) override { | 1253 void CommitCompleteOnThread(LayerTreeHostImpl* impl) override { |
1247 LayerTreeHostContextTest::CommitCompleteOnThread(impl); | 1254 LayerTreeHostContextTest::CommitCompleteOnThread(impl); |
(...skipping 425 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1673 SINGLE_AND_MULTI_THREAD_TEST_F(UIResourceLostEviction); | 1680 SINGLE_AND_MULTI_THREAD_TEST_F(UIResourceLostEviction); |
1674 | 1681 |
1675 class LayerTreeHostContextTestSurfaceCreateCallback | 1682 class LayerTreeHostContextTestSurfaceCreateCallback |
1676 : public LayerTreeHostContextTest { | 1683 : public LayerTreeHostContextTest { |
1677 public: | 1684 public: |
1678 LayerTreeHostContextTestSurfaceCreateCallback() | 1685 LayerTreeHostContextTestSurfaceCreateCallback() |
1679 : LayerTreeHostContextTest() {} | 1686 : LayerTreeHostContextTest() {} |
1680 | 1687 |
1681 void SetupTree() override { | 1688 void SetupTree() override { |
1682 if (layer_tree_host()->settings().impl_side_painting) { | 1689 if (layer_tree_host()->settings().impl_side_painting) { |
1683 picture_layer_ = FakePictureLayer::Create(&client_); | 1690 picture_layer_ = FakePictureLayer::Create(layer_settings(), &client_); |
1684 picture_layer_->SetBounds(gfx::Size(10, 20)); | 1691 picture_layer_->SetBounds(gfx::Size(10, 20)); |
1685 layer_tree_host()->SetRootLayer(picture_layer_); | 1692 layer_tree_host()->SetRootLayer(picture_layer_); |
1686 } else { | 1693 } else { |
1687 content_layer_ = FakeContentLayer::Create(&client_); | 1694 content_layer_ = FakeContentLayer::Create(layer_settings(), &client_); |
1688 content_layer_->SetBounds(gfx::Size(10, 20)); | 1695 content_layer_->SetBounds(gfx::Size(10, 20)); |
1689 layer_tree_host()->SetRootLayer(content_layer_); | 1696 layer_tree_host()->SetRootLayer(content_layer_); |
1690 } | 1697 } |
1691 | 1698 |
1692 LayerTreeHostContextTest::SetupTree(); | 1699 LayerTreeHostContextTest::SetupTree(); |
1693 } | 1700 } |
1694 | 1701 |
1695 void BeginTest() override { PostSetNeedsCommitToMainThread(); } | 1702 void BeginTest() override { PostSetNeedsCommitToMainThread(); } |
1696 | 1703 |
1697 void DidCommit() override { | 1704 void DidCommit() override { |
(...skipping 94 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1792 void AfterTest() override {} | 1799 void AfterTest() override {} |
1793 | 1800 |
1794 bool deferred_; | 1801 bool deferred_; |
1795 }; | 1802 }; |
1796 | 1803 |
1797 SINGLE_AND_MULTI_THREAD_TEST_F( | 1804 SINGLE_AND_MULTI_THREAD_TEST_F( |
1798 LayerTreeHostContextTestLoseAfterSendingBeginMainFrame); | 1805 LayerTreeHostContextTestLoseAfterSendingBeginMainFrame); |
1799 | 1806 |
1800 } // namespace | 1807 } // namespace |
1801 } // namespace cc | 1808 } // namespace cc |
OLD | NEW |