Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(29)

Side by Side Diff: cc/trees/layer_tree_host_unittest_context.cc

Issue 1122393003: CC: Plumb LayerSettings parameter for cc::Layer construction. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rebase Created 5 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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
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 68 matching lines...) Expand 10 before | Expand all | Expand 10 after
633 num_commits_(0), 633 num_commits_(0),
634 lost_context_(false) {} 634 lost_context_(false) {}
635 635
636 void SetupTree() override { 636 void SetupTree() override {
637 // Paint non-solid color. 637 // Paint non-solid color.
638 SkPaint paint; 638 SkPaint paint;
639 paint.setColor(SkColorSetARGB(100, 80, 200, 200)); 639 paint.setColor(SkColorSetARGB(100, 80, 200, 200));
640 client_.add_draw_rect(gfx::Rect(0, 0, 5, 5), paint); 640 client_.add_draw_rect(gfx::Rect(0, 0, 5, 5), paint);
641 641
642 if (layer_tree_host()->settings().impl_side_painting) { 642 if (layer_tree_host()->settings().impl_side_painting) {
643 picture_layer_ = FakePictureLayer::Create(&client_); 643 picture_layer_ = FakePictureLayer::Create(layer_settings(), &client_);
644 picture_layer_->SetBounds(gfx::Size(10, 20)); 644 picture_layer_->SetBounds(gfx::Size(10, 20));
645 layer_tree_host()->SetRootLayer(picture_layer_); 645 layer_tree_host()->SetRootLayer(picture_layer_);
646 } else { 646 } else {
647 content_layer_ = FakeContentLayer::Create(&client_); 647 content_layer_ = FakeContentLayer::Create(layer_settings(), &client_);
648 content_layer_->SetBounds(gfx::Size(10, 20)); 648 content_layer_->SetBounds(gfx::Size(10, 20));
649 layer_tree_host()->SetRootLayer(content_layer_); 649 layer_tree_host()->SetRootLayer(content_layer_);
650 } 650 }
651 651
652 LayerTreeHostContextTest::SetupTree(); 652 LayerTreeHostContextTest::SetupTree();
653 } 653 }
654 654
655 void BeginTest() override { PostSetNeedsCommitToMainThread(); } 655 void BeginTest() override { PostSetNeedsCommitToMainThread(); }
656 656
657 void PostEvictTextures() { 657 void PostEvictTextures() {
(...skipping 149 matching lines...) Expand 10 before | Expand all | Expand 10 after
807 LayerTreeHostContextTest::CreateContext3d(); 807 LayerTreeHostContextTest::CreateContext3d();
808 if (times_to_lose_on_end_query_) { 808 if (times_to_lose_on_end_query_) {
809 --times_to_lose_on_end_query_; 809 --times_to_lose_on_end_query_;
810 context->set_times_end_query_succeeds(5); 810 context->set_times_end_query_succeeds(5);
811 } 811 }
812 return context.Pass(); 812 return context.Pass();
813 } 813 }
814 814
815 void SetupTree() override { 815 void SetupTree() override {
816 if (layer_tree_host()->settings().impl_side_painting) 816 if (layer_tree_host()->settings().impl_side_painting)
817 parent_ = FakePictureLayer::Create(&client_); 817 parent_ = FakePictureLayer::Create(layer_settings(), &client_);
818 else 818 else
819 parent_ = FakeContentLayer::Create(&client_); 819 parent_ = FakeContentLayer::Create(layer_settings(), &client_);
820 820
821 parent_->SetBounds(gfx::Size(num_children_, 1)); 821 parent_->SetBounds(gfx::Size(num_children_, 1));
822 822
823 for (int i = 0; i < num_children_; i++) { 823 for (int i = 0; i < num_children_; i++) {
824 scoped_refptr<Layer> child; 824 scoped_refptr<Layer> child;
825 if (layer_tree_host()->settings().impl_side_painting) 825 if (layer_tree_host()->settings().impl_side_painting)
826 child = FakePictureLayer::Create(&client_); 826 child = FakePictureLayer::Create(layer_settings(), &client_);
827 else 827 else
828 child = FakeContentLayer::Create(&client_); 828 child = FakeContentLayer::Create(layer_settings(), &client_);
829 child->SetPosition(gfx::PointF(i, 0.f)); 829 child->SetPosition(gfx::PointF(i, 0.f));
830 child->SetBounds(gfx::Size(1, 1)); 830 child->SetBounds(gfx::Size(1, 1));
831 parent_->AddChild(child); 831 parent_->AddChild(child);
832 } 832 }
833 833
834 layer_tree_host()->SetRootLayer(parent_); 834 layer_tree_host()->SetRootLayer(parent_);
835 LayerTreeHostContextTest::SetupTree(); 835 LayerTreeHostContextTest::SetupTree();
836 } 836 }
837 837
838 void BeginTest() override { PostSetNeedsCommitToMainThread(); } 838 void BeginTest() override { PostSetNeedsCommitToMainThread(); }
(...skipping 15 matching lines...) Expand all
854 SINGLE_AND_MULTI_THREAD_NOIMPL_TEST_F( 854 SINGLE_AND_MULTI_THREAD_NOIMPL_TEST_F(
855 LayerTreeHostContextTestLostContextWhileUpdatingResources); 855 LayerTreeHostContextTestLostContextWhileUpdatingResources);
856 856
857 class LayerTreeHostContextTestLayersNotified : public LayerTreeHostContextTest { 857 class LayerTreeHostContextTestLayersNotified : public LayerTreeHostContextTest {
858 public: 858 public:
859 LayerTreeHostContextTestLayersNotified() 859 LayerTreeHostContextTestLayersNotified()
860 : LayerTreeHostContextTest(), num_commits_(0) {} 860 : LayerTreeHostContextTest(), num_commits_(0) {}
861 861
862 void SetupTree() override { 862 void SetupTree() override {
863 if (layer_tree_host()->settings().impl_side_painting) { 863 if (layer_tree_host()->settings().impl_side_painting) {
864 root_ = FakePictureLayer::Create(&client_); 864 root_ = FakePictureLayer::Create(layer_settings(), &client_);
865 child_ = FakePictureLayer::Create(&client_); 865 child_ = FakePictureLayer::Create(layer_settings(), &client_);
866 grandchild_ = FakePictureLayer::Create(&client_); 866 grandchild_ = FakePictureLayer::Create(layer_settings(), &client_);
867 } else { 867 } else {
868 root_ = FakeContentLayer::Create(&client_); 868 root_ = FakeContentLayer::Create(layer_settings(), &client_);
869 child_ = FakeContentLayer::Create(&client_); 869 child_ = FakeContentLayer::Create(layer_settings(), &client_);
870 grandchild_ = FakeContentLayer::Create(&client_); 870 grandchild_ = FakeContentLayer::Create(layer_settings(), &client_);
871 } 871 }
872 872
873 root_->AddChild(child_); 873 root_->AddChild(child_);
874 child_->AddChild(grandchild_); 874 child_->AddChild(grandchild_);
875 875
876 layer_tree_host()->SetRootLayer(root_); 876 layer_tree_host()->SetRootLayer(root_);
877 LayerTreeHostContextTest::SetupTree(); 877 LayerTreeHostContextTest::SetupTree();
878 } 878 }
879 879
880 void BeginTest() override { PostSetNeedsCommitToMainThread(); } 880 void BeginTest() override { PostSetNeedsCommitToMainThread(); }
(...skipping 127 matching lines...) Expand 10 before | Expand all | Expand 10 after
1008 child_resource_provider_->CreateResource( 1008 child_resource_provider_->CreateResource(
1009 gfx::Size(4, 4), GL_CLAMP_TO_EDGE, 1009 gfx::Size(4, 4), GL_CLAMP_TO_EDGE,
1010 ResourceProvider::TEXTURE_HINT_IMMUTABLE, RGBA_8888); 1010 ResourceProvider::TEXTURE_HINT_IMMUTABLE, RGBA_8888);
1011 ResourceProvider::ScopedWriteLockGL lock(child_resource_provider_.get(), 1011 ResourceProvider::ScopedWriteLockGL lock(child_resource_provider_.get(),
1012 resource); 1012 resource);
1013 1013
1014 gpu::Mailbox mailbox; 1014 gpu::Mailbox mailbox;
1015 gl->GenMailboxCHROMIUM(mailbox.name); 1015 gl->GenMailboxCHROMIUM(mailbox.name);
1016 GLuint sync_point = gl->InsertSyncPointCHROMIUM(); 1016 GLuint sync_point = gl->InsertSyncPointCHROMIUM();
1017 1017
1018 scoped_refptr<Layer> root = Layer::Create(); 1018 scoped_refptr<Layer> root = Layer::Create(layer_settings());
1019 root->SetBounds(gfx::Size(10, 10)); 1019 root->SetBounds(gfx::Size(10, 10));
1020 root->SetIsDrawable(true); 1020 root->SetIsDrawable(true);
1021 1021
1022 scoped_refptr<FakeDelegatedRendererLayer> delegated = 1022 scoped_refptr<FakeDelegatedRendererLayer> delegated =
1023 FakeDelegatedRendererLayer::Create(delegated_frame_provider_.get()); 1023 FakeDelegatedRendererLayer::Create(layer_settings(),
1024 delegated_frame_provider_.get());
1024 delegated->SetBounds(gfx::Size(10, 10)); 1025 delegated->SetBounds(gfx::Size(10, 10));
1025 delegated->SetIsDrawable(true); 1026 delegated->SetIsDrawable(true);
1026 root->AddChild(delegated); 1027 root->AddChild(delegated);
1027 1028
1028 scoped_refptr<Layer> layer; 1029 scoped_refptr<Layer> layer;
1029 if (layer_tree_host()->settings().impl_side_painting) 1030 if (layer_tree_host()->settings().impl_side_painting)
1030 layer = PictureLayer::Create(&client_); 1031 layer = PictureLayer::Create(layer_settings(), &client_);
1031 else 1032 else
1032 layer = ContentLayer::Create(&client_); 1033 layer = ContentLayer::Create(layer_settings(), &client_);
1033 layer->SetBounds(gfx::Size(10, 10)); 1034 layer->SetBounds(gfx::Size(10, 10));
1034 layer->SetIsDrawable(true); 1035 layer->SetIsDrawable(true);
1035 root->AddChild(layer); 1036 root->AddChild(layer);
1036 1037
1037 scoped_refptr<TextureLayer> texture = TextureLayer::CreateForMailbox(NULL); 1038 scoped_refptr<TextureLayer> texture =
1039 TextureLayer::CreateForMailbox(layer_settings_, NULL);
1038 texture->SetBounds(gfx::Size(10, 10)); 1040 texture->SetBounds(gfx::Size(10, 10));
1039 texture->SetIsDrawable(true); 1041 texture->SetIsDrawable(true);
1040 texture->SetTextureMailbox( 1042 texture->SetTextureMailbox(
1041 TextureMailbox(mailbox, GL_TEXTURE_2D, sync_point), 1043 TextureMailbox(mailbox, GL_TEXTURE_2D, sync_point),
1042 SingleReleaseCallback::Create( 1044 SingleReleaseCallback::Create(
1043 base::Bind(&LayerTreeHostContextTestDontUseLostResources:: 1045 base::Bind(&LayerTreeHostContextTestDontUseLostResources::
1044 EmptyReleaseCallback))); 1046 EmptyReleaseCallback)));
1045 root->AddChild(texture); 1047 root->AddChild(texture);
1046 1048
1047 scoped_refptr<Layer> mask; 1049 scoped_refptr<Layer> mask;
1048 if (layer_tree_host()->settings().impl_side_painting) 1050 if (layer_tree_host()->settings().impl_side_painting)
1049 mask = PictureLayer::Create(&client_); 1051 mask = PictureLayer::Create(layer_settings_, &client_);
1050 else 1052 else
1051 mask = ContentLayer::Create(&client_); 1053 mask = ContentLayer::Create(layer_settings_, &client_);
1052 mask->SetBounds(gfx::Size(10, 10)); 1054 mask->SetBounds(gfx::Size(10, 10));
1053 1055
1054 scoped_refptr<Layer> layer_with_mask; 1056 scoped_refptr<Layer> layer_with_mask;
1055 if (layer_tree_host()->settings().impl_side_painting) 1057 if (layer_tree_host()->settings().impl_side_painting)
1056 layer_with_mask = PictureLayer::Create(&client_); 1058 layer_with_mask = PictureLayer::Create(layer_settings_, &client_);
1057 else 1059 else
1058 layer_with_mask = ContentLayer::Create(&client_); 1060 layer_with_mask = ContentLayer::Create(layer_settings_, &client_);
1059 layer_with_mask->SetBounds(gfx::Size(10, 10)); 1061 layer_with_mask->SetBounds(gfx::Size(10, 10));
1060 layer_with_mask->SetIsDrawable(true); 1062 layer_with_mask->SetIsDrawable(true);
1061 layer_with_mask->SetMaskLayer(mask.get()); 1063 layer_with_mask->SetMaskLayer(mask.get());
1062 root->AddChild(layer_with_mask); 1064 root->AddChild(layer_with_mask);
1063 1065
1064 scoped_refptr<VideoLayer> video_color = 1066 scoped_refptr<VideoLayer> video_color = VideoLayer::Create(
1065 VideoLayer::Create(&color_frame_provider_, media::VIDEO_ROTATION_0); 1067 layer_settings_, &color_frame_provider_, media::VIDEO_ROTATION_0);
1066 video_color->SetBounds(gfx::Size(10, 10)); 1068 video_color->SetBounds(gfx::Size(10, 10));
1067 video_color->SetIsDrawable(true); 1069 video_color->SetIsDrawable(true);
1068 root->AddChild(video_color); 1070 root->AddChild(video_color);
1069 1071
1070 scoped_refptr<VideoLayer> video_hw = 1072 scoped_refptr<VideoLayer> video_hw = VideoLayer::Create(
1071 VideoLayer::Create(&hw_frame_provider_, media::VIDEO_ROTATION_0); 1073 layer_settings_, &hw_frame_provider_, media::VIDEO_ROTATION_0);
1072 video_hw->SetBounds(gfx::Size(10, 10)); 1074 video_hw->SetBounds(gfx::Size(10, 10));
1073 video_hw->SetIsDrawable(true); 1075 video_hw->SetIsDrawable(true);
1074 root->AddChild(video_hw); 1076 root->AddChild(video_hw);
1075 1077
1076 scoped_refptr<VideoLayer> video_scaled_hw = 1078 scoped_refptr<VideoLayer> video_scaled_hw = VideoLayer::Create(
1077 VideoLayer::Create(&scaled_hw_frame_provider_, media::VIDEO_ROTATION_0); 1079 layer_settings_, &scaled_hw_frame_provider_, media::VIDEO_ROTATION_0);
1078 video_scaled_hw->SetBounds(gfx::Size(10, 10)); 1080 video_scaled_hw->SetBounds(gfx::Size(10, 10));
1079 video_scaled_hw->SetIsDrawable(true); 1081 video_scaled_hw->SetIsDrawable(true);
1080 root->AddChild(video_scaled_hw); 1082 root->AddChild(video_scaled_hw);
1081 1083
1082 color_video_frame_ = VideoFrame::CreateColorFrame( 1084 color_video_frame_ = VideoFrame::CreateColorFrame(
1083 gfx::Size(4, 4), 0x80, 0x80, 0x80, base::TimeDelta()); 1085 gfx::Size(4, 4), 0x80, 0x80, 0x80, base::TimeDelta());
1084 hw_video_frame_ = VideoFrame::WrapNativeTexture( 1086 hw_video_frame_ = VideoFrame::WrapNativeTexture(
1085 gpu::MailboxHolder(mailbox, GL_TEXTURE_2D, sync_point), 1087 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, 4, 4), gfx::Size(4, 4), base::TimeDelta(), 1089 gfx::Rect(0, 0, 4, 4), gfx::Size(4, 4), base::TimeDelta(),
1088 false /* allow_overlay */, true /* has_alpha */); 1090 false /* allow_overlay */, true /* has_alpha */);
1089 scaled_hw_video_frame_ = VideoFrame::WrapNativeTexture( 1091 scaled_hw_video_frame_ = VideoFrame::WrapNativeTexture(
1090 gpu::MailboxHolder(mailbox, GL_TEXTURE_2D, sync_point), 1092 gpu::MailboxHolder(mailbox, GL_TEXTURE_2D, sync_point),
1091 media::VideoFrame::ReleaseMailboxCB(), gfx::Size(4, 4), 1093 media::VideoFrame::ReleaseMailboxCB(), gfx::Size(4, 4),
1092 gfx::Rect(0, 0, 3, 2), gfx::Size(4, 4), base::TimeDelta(), 1094 gfx::Rect(0, 0, 3, 2), gfx::Size(4, 4), base::TimeDelta(),
1093 false /* allow_overlay */, true /* has_alpha */); 1095 false /* allow_overlay */, true /* has_alpha */);
1094 1096
1095 color_frame_provider_.set_frame(color_video_frame_); 1097 color_frame_provider_.set_frame(color_video_frame_);
1096 hw_frame_provider_.set_frame(hw_video_frame_); 1098 hw_frame_provider_.set_frame(hw_video_frame_);
1097 scaled_hw_frame_provider_.set_frame(scaled_hw_video_frame_); 1099 scaled_hw_frame_provider_.set_frame(scaled_hw_video_frame_);
1098 1100
1099 if (!delegating_renderer()) { 1101 if (!delegating_renderer()) {
1100 // TODO(danakj): IOSurface layer can not be transported. crbug.com/239335 1102 // TODO(danakj): IOSurface layer can not be transported. crbug.com/239335
1101 scoped_refptr<IOSurfaceLayer> io_surface = IOSurfaceLayer::Create(); 1103 scoped_refptr<IOSurfaceLayer> io_surface =
1104 IOSurfaceLayer::Create(layer_settings_);
1102 io_surface->SetBounds(gfx::Size(10, 10)); 1105 io_surface->SetBounds(gfx::Size(10, 10));
1103 io_surface->SetIsDrawable(true); 1106 io_surface->SetIsDrawable(true);
1104 io_surface->SetIOSurfaceProperties(1, gfx::Size(10, 10)); 1107 io_surface->SetIOSurfaceProperties(1, gfx::Size(10, 10));
1105 root->AddChild(io_surface); 1108 root->AddChild(io_surface);
1106 } 1109 }
1107 1110
1108 // Enable the hud. 1111 // Enable the hud.
1109 LayerTreeDebugState debug_state; 1112 LayerTreeDebugState debug_state;
1110 debug_state.show_property_changed_rects = true; 1113 debug_state.show_property_changed_rects = true;
1111 layer_tree_host()->SetDebugState(debug_state); 1114 layer_tree_host()->SetDebugState(debug_state);
1112 1115
1113 scoped_refptr<PaintedScrollbarLayer> scrollbar = 1116 scoped_refptr<PaintedScrollbarLayer> scrollbar =
1114 PaintedScrollbarLayer::Create( 1117 PaintedScrollbarLayer::Create(
1115 scoped_ptr<Scrollbar>(new FakeScrollbar).Pass(), layer->id()); 1118 layer_settings_, scoped_ptr<Scrollbar>(new FakeScrollbar).Pass(),
1119 layer->id());
1116 scrollbar->SetBounds(gfx::Size(10, 10)); 1120 scrollbar->SetBounds(gfx::Size(10, 10));
1117 scrollbar->SetIsDrawable(true); 1121 scrollbar->SetIsDrawable(true);
1118 root->AddChild(scrollbar); 1122 root->AddChild(scrollbar);
1119 1123
1120 layer_tree_host()->SetRootLayer(root); 1124 layer_tree_host()->SetRootLayer(root);
1121 LayerTreeHostContextTest::SetupTree(); 1125 LayerTreeHostContextTest::SetupTree();
1122 } 1126 }
1123 1127
1124 void BeginTest() override { PostSetNeedsCommitToMainThread(); } 1128 void BeginTest() override { PostSetNeedsCommitToMainThread(); }
1125 1129
(...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after
1182 delegated_resource_collection_; 1186 delegated_resource_collection_;
1183 scoped_refptr<DelegatedFrameProvider> delegated_frame_provider_; 1187 scoped_refptr<DelegatedFrameProvider> delegated_frame_provider_;
1184 1188
1185 scoped_refptr<VideoFrame> color_video_frame_; 1189 scoped_refptr<VideoFrame> color_video_frame_;
1186 scoped_refptr<VideoFrame> hw_video_frame_; 1190 scoped_refptr<VideoFrame> hw_video_frame_;
1187 scoped_refptr<VideoFrame> scaled_hw_video_frame_; 1191 scoped_refptr<VideoFrame> scaled_hw_video_frame_;
1188 1192
1189 FakeVideoFrameProvider color_frame_provider_; 1193 FakeVideoFrameProvider color_frame_provider_;
1190 FakeVideoFrameProvider hw_frame_provider_; 1194 FakeVideoFrameProvider hw_frame_provider_;
1191 FakeVideoFrameProvider scaled_hw_frame_provider_; 1195 FakeVideoFrameProvider scaled_hw_frame_provider_;
1196
1197 LayerSettings layer_settings_;
1192 }; 1198 };
1193 1199
1194 SINGLE_AND_MULTI_THREAD_TEST_F(LayerTreeHostContextTestDontUseLostResources); 1200 SINGLE_AND_MULTI_THREAD_TEST_F(LayerTreeHostContextTestDontUseLostResources);
1195 1201
1196 class ImplSidePaintingLayerTreeHostContextTest 1202 class ImplSidePaintingLayerTreeHostContextTest
1197 : public LayerTreeHostContextTest { 1203 : public LayerTreeHostContextTest {
1198 public: 1204 public:
1199 void InitializeSettings(LayerTreeSettings* settings) override { 1205 void InitializeSettings(LayerTreeSettings* settings) override {
1200 settings->impl_side_painting = true; 1206 settings->impl_side_painting = true;
1201 } 1207 }
1202 }; 1208 };
1203 1209
1204 class LayerTreeHostContextTestImplSidePainting 1210 class LayerTreeHostContextTestImplSidePainting
1205 : public ImplSidePaintingLayerTreeHostContextTest { 1211 : public ImplSidePaintingLayerTreeHostContextTest {
1206 public: 1212 public:
1207 void SetupTree() override { 1213 void SetupTree() override {
1208 scoped_refptr<Layer> root = Layer::Create(); 1214 scoped_refptr<Layer> root = Layer::Create(layer_settings());
1209 root->SetBounds(gfx::Size(10, 10)); 1215 root->SetBounds(gfx::Size(10, 10));
1210 root->SetIsDrawable(true); 1216 root->SetIsDrawable(true);
1211 1217
1212 scoped_refptr<PictureLayer> picture = PictureLayer::Create(&client_); 1218 scoped_refptr<PictureLayer> picture =
1219 PictureLayer::Create(layer_settings(), &client_);
1213 picture->SetBounds(gfx::Size(10, 10)); 1220 picture->SetBounds(gfx::Size(10, 10));
1214 picture->SetIsDrawable(true); 1221 picture->SetIsDrawable(true);
1215 root->AddChild(picture); 1222 root->AddChild(picture);
1216 1223
1217 layer_tree_host()->SetRootLayer(root); 1224 layer_tree_host()->SetRootLayer(root);
1218 LayerTreeHostContextTest::SetupTree(); 1225 LayerTreeHostContextTest::SetupTree();
1219 } 1226 }
1220 1227
1221 void BeginTest() override { 1228 void BeginTest() override {
1222 times_to_lose_during_commit_ = 1; 1229 times_to_lose_during_commit_ = 1;
1223 PostSetNeedsCommitToMainThread(); 1230 PostSetNeedsCommitToMainThread();
1224 } 1231 }
1225 1232
1226 void AfterTest() override {} 1233 void AfterTest() override {}
1227 1234
1228 void DidInitializeOutputSurface() override { EndTest(); } 1235 void DidInitializeOutputSurface() override { EndTest(); }
1229 1236
1230 private: 1237 private:
1231 FakeContentLayerClient client_; 1238 FakeContentLayerClient client_;
1232 }; 1239 };
1233 1240
1234 MULTI_THREAD_TEST_F(LayerTreeHostContextTestImplSidePainting); 1241 MULTI_THREAD_TEST_F(LayerTreeHostContextTestImplSidePainting);
1235 1242
1236 class ScrollbarLayerLostContext : public LayerTreeHostContextTest { 1243 class ScrollbarLayerLostContext : public LayerTreeHostContextTest {
1237 public: 1244 public:
1238 ScrollbarLayerLostContext() : commits_(0) {} 1245 ScrollbarLayerLostContext() : commits_(0) {}
1239 1246
1240 void BeginTest() override { 1247 void BeginTest() override {
1241 scoped_refptr<Layer> scroll_layer = Layer::Create(); 1248 scoped_refptr<Layer> scroll_layer = Layer::Create(layer_settings());
1242 scrollbar_layer_ = 1249 scrollbar_layer_ = FakePaintedScrollbarLayer::Create(
1243 FakePaintedScrollbarLayer::Create(false, true, scroll_layer->id()); 1250 layer_settings(), false, true, scroll_layer->id());
1244 scrollbar_layer_->SetBounds(gfx::Size(10, 100)); 1251 scrollbar_layer_->SetBounds(gfx::Size(10, 100));
1245 layer_tree_host()->root_layer()->AddChild(scrollbar_layer_); 1252 layer_tree_host()->root_layer()->AddChild(scrollbar_layer_);
1246 layer_tree_host()->root_layer()->AddChild(scroll_layer); 1253 layer_tree_host()->root_layer()->AddChild(scroll_layer);
1247 PostSetNeedsCommitToMainThread(); 1254 PostSetNeedsCommitToMainThread();
1248 } 1255 }
1249 1256
1250 void AfterTest() override {} 1257 void AfterTest() override {}
1251 1258
1252 void CommitCompleteOnThread(LayerTreeHostImpl* impl) override { 1259 void CommitCompleteOnThread(LayerTreeHostImpl* impl) override {
1253 LayerTreeHostContextTest::CommitCompleteOnThread(impl); 1260 LayerTreeHostContextTest::CommitCompleteOnThread(impl);
(...skipping 425 matching lines...) Expand 10 before | Expand all | Expand 10 after
1679 SINGLE_AND_MULTI_THREAD_TEST_F(UIResourceLostEviction); 1686 SINGLE_AND_MULTI_THREAD_TEST_F(UIResourceLostEviction);
1680 1687
1681 class LayerTreeHostContextTestSurfaceCreateCallback 1688 class LayerTreeHostContextTestSurfaceCreateCallback
1682 : public LayerTreeHostContextTest { 1689 : public LayerTreeHostContextTest {
1683 public: 1690 public:
1684 LayerTreeHostContextTestSurfaceCreateCallback() 1691 LayerTreeHostContextTestSurfaceCreateCallback()
1685 : LayerTreeHostContextTest() {} 1692 : LayerTreeHostContextTest() {}
1686 1693
1687 void SetupTree() override { 1694 void SetupTree() override {
1688 if (layer_tree_host()->settings().impl_side_painting) { 1695 if (layer_tree_host()->settings().impl_side_painting) {
1689 picture_layer_ = FakePictureLayer::Create(&client_); 1696 picture_layer_ = FakePictureLayer::Create(layer_settings(), &client_);
1690 picture_layer_->SetBounds(gfx::Size(10, 20)); 1697 picture_layer_->SetBounds(gfx::Size(10, 20));
1691 layer_tree_host()->SetRootLayer(picture_layer_); 1698 layer_tree_host()->SetRootLayer(picture_layer_);
1692 } else { 1699 } else {
1693 content_layer_ = FakeContentLayer::Create(&client_); 1700 content_layer_ = FakeContentLayer::Create(layer_settings(), &client_);
1694 content_layer_->SetBounds(gfx::Size(10, 20)); 1701 content_layer_->SetBounds(gfx::Size(10, 20));
1695 layer_tree_host()->SetRootLayer(content_layer_); 1702 layer_tree_host()->SetRootLayer(content_layer_);
1696 } 1703 }
1697 1704
1698 LayerTreeHostContextTest::SetupTree(); 1705 LayerTreeHostContextTest::SetupTree();
1699 } 1706 }
1700 1707
1701 void BeginTest() override { PostSetNeedsCommitToMainThread(); } 1708 void BeginTest() override { PostSetNeedsCommitToMainThread(); }
1702 1709
1703 void DidCommit() override { 1710 void DidCommit() override {
(...skipping 94 matching lines...) Expand 10 before | Expand all | Expand 10 after
1798 void AfterTest() override {} 1805 void AfterTest() override {}
1799 1806
1800 bool deferred_; 1807 bool deferred_;
1801 }; 1808 };
1802 1809
1803 SINGLE_AND_MULTI_THREAD_TEST_F( 1810 SINGLE_AND_MULTI_THREAD_TEST_F(
1804 LayerTreeHostContextTestLoseAfterSendingBeginMainFrame); 1811 LayerTreeHostContextTestLoseAfterSendingBeginMainFrame);
1805 1812
1806 } // namespace 1813 } // namespace
1807 } // namespace cc 1814 } // namespace cc
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698