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

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: Re-work Android LayerSettings. 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 65 matching lines...) Expand 10 before | Expand all | Expand 10 after
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
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
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
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 gpu::MailboxHolder(mailbox, GL_TEXTURE_2D, sync_point), 1081 gpu::MailboxHolder(mailbox, GL_TEXTURE_2D, sync_point),
1080 media::VideoFrame::ReleaseMailboxCB(), gfx::Size(4, 4), 1082 media::VideoFrame::ReleaseMailboxCB(), gfx::Size(4, 4),
1081 gfx::Rect(0, 0, 4, 4), gfx::Size(4, 4), base::TimeDelta(), false); 1083 gfx::Rect(0, 0, 4, 4), gfx::Size(4, 4), base::TimeDelta(), false);
1082 scaled_hw_video_frame_ = VideoFrame::WrapNativeTexture( 1084 scaled_hw_video_frame_ = VideoFrame::WrapNativeTexture(
1083 gpu::MailboxHolder(mailbox, GL_TEXTURE_2D, sync_point), 1085 gpu::MailboxHolder(mailbox, GL_TEXTURE_2D, sync_point),
1084 media::VideoFrame::ReleaseMailboxCB(), gfx::Size(4, 4), 1086 media::VideoFrame::ReleaseMailboxCB(), gfx::Size(4, 4),
1085 gfx::Rect(0, 0, 3, 2), gfx::Size(4, 4), base::TimeDelta(), false); 1087 gfx::Rect(0, 0, 3, 2), gfx::Size(4, 4), base::TimeDelta(), false);
1086 1088
1087 color_frame_provider_.set_frame(color_video_frame_); 1089 color_frame_provider_.set_frame(color_video_frame_);
1088 hw_frame_provider_.set_frame(hw_video_frame_); 1090 hw_frame_provider_.set_frame(hw_video_frame_);
1089 scaled_hw_frame_provider_.set_frame(scaled_hw_video_frame_); 1091 scaled_hw_frame_provider_.set_frame(scaled_hw_video_frame_);
1090 1092
1091 if (!delegating_renderer()) { 1093 if (!delegating_renderer()) {
1092 // TODO(danakj): IOSurface layer can not be transported. crbug.com/239335 1094 // TODO(danakj): IOSurface layer can not be transported. crbug.com/239335
1093 scoped_refptr<IOSurfaceLayer> io_surface = IOSurfaceLayer::Create(); 1095 scoped_refptr<IOSurfaceLayer> io_surface =
1096 IOSurfaceLayer::Create(layer_settings_);
1094 io_surface->SetBounds(gfx::Size(10, 10)); 1097 io_surface->SetBounds(gfx::Size(10, 10));
1095 io_surface->SetIsDrawable(true); 1098 io_surface->SetIsDrawable(true);
1096 io_surface->SetIOSurfaceProperties(1, gfx::Size(10, 10)); 1099 io_surface->SetIOSurfaceProperties(1, gfx::Size(10, 10));
1097 root->AddChild(io_surface); 1100 root->AddChild(io_surface);
1098 } 1101 }
1099 1102
1100 // Enable the hud. 1103 // Enable the hud.
1101 LayerTreeDebugState debug_state; 1104 LayerTreeDebugState debug_state;
1102 debug_state.show_property_changed_rects = true; 1105 debug_state.show_property_changed_rects = true;
1103 layer_tree_host()->SetDebugState(debug_state); 1106 layer_tree_host()->SetDebugState(debug_state);
1104 1107
1105 scoped_refptr<PaintedScrollbarLayer> scrollbar = 1108 scoped_refptr<PaintedScrollbarLayer> scrollbar =
1106 PaintedScrollbarLayer::Create( 1109 PaintedScrollbarLayer::Create(
1107 scoped_ptr<Scrollbar>(new FakeScrollbar).Pass(), layer->id()); 1110 layer_settings_, scoped_ptr<Scrollbar>(new FakeScrollbar).Pass(),
1111 layer->id());
1108 scrollbar->SetBounds(gfx::Size(10, 10)); 1112 scrollbar->SetBounds(gfx::Size(10, 10));
1109 scrollbar->SetIsDrawable(true); 1113 scrollbar->SetIsDrawable(true);
1110 root->AddChild(scrollbar); 1114 root->AddChild(scrollbar);
1111 1115
1112 layer_tree_host()->SetRootLayer(root); 1116 layer_tree_host()->SetRootLayer(root);
1113 LayerTreeHostContextTest::SetupTree(); 1117 LayerTreeHostContextTest::SetupTree();
1114 } 1118 }
1115 1119
1116 void BeginTest() override { PostSetNeedsCommitToMainThread(); } 1120 void BeginTest() override { PostSetNeedsCommitToMainThread(); }
1117 1121
(...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after
1174 delegated_resource_collection_; 1178 delegated_resource_collection_;
1175 scoped_refptr<DelegatedFrameProvider> delegated_frame_provider_; 1179 scoped_refptr<DelegatedFrameProvider> delegated_frame_provider_;
1176 1180
1177 scoped_refptr<VideoFrame> color_video_frame_; 1181 scoped_refptr<VideoFrame> color_video_frame_;
1178 scoped_refptr<VideoFrame> hw_video_frame_; 1182 scoped_refptr<VideoFrame> hw_video_frame_;
1179 scoped_refptr<VideoFrame> scaled_hw_video_frame_; 1183 scoped_refptr<VideoFrame> scaled_hw_video_frame_;
1180 1184
1181 FakeVideoFrameProvider color_frame_provider_; 1185 FakeVideoFrameProvider color_frame_provider_;
1182 FakeVideoFrameProvider hw_frame_provider_; 1186 FakeVideoFrameProvider hw_frame_provider_;
1183 FakeVideoFrameProvider scaled_hw_frame_provider_; 1187 FakeVideoFrameProvider scaled_hw_frame_provider_;
1188
1189 LayerSettings layer_settings_;
1184 }; 1190 };
1185 1191
1186 SINGLE_AND_MULTI_THREAD_TEST_F(LayerTreeHostContextTestDontUseLostResources); 1192 SINGLE_AND_MULTI_THREAD_TEST_F(LayerTreeHostContextTestDontUseLostResources);
1187 1193
1188 class ImplSidePaintingLayerTreeHostContextTest 1194 class ImplSidePaintingLayerTreeHostContextTest
1189 : public LayerTreeHostContextTest { 1195 : public LayerTreeHostContextTest {
1190 public: 1196 public:
1191 void InitializeSettings(LayerTreeSettings* settings) override { 1197 void InitializeSettings(LayerTreeSettings* settings) override {
1192 settings->impl_side_painting = true; 1198 settings->impl_side_painting = true;
1193 } 1199 }
1194 }; 1200 };
1195 1201
1196 class LayerTreeHostContextTestImplSidePainting 1202 class LayerTreeHostContextTestImplSidePainting
1197 : public ImplSidePaintingLayerTreeHostContextTest { 1203 : public ImplSidePaintingLayerTreeHostContextTest {
1198 public: 1204 public:
1199 void SetupTree() override { 1205 void SetupTree() override {
1200 scoped_refptr<Layer> root = Layer::Create(); 1206 scoped_refptr<Layer> root = Layer::Create(layer_settings());
1201 root->SetBounds(gfx::Size(10, 10)); 1207 root->SetBounds(gfx::Size(10, 10));
1202 root->SetIsDrawable(true); 1208 root->SetIsDrawable(true);
1203 1209
1204 scoped_refptr<PictureLayer> picture = PictureLayer::Create(&client_); 1210 scoped_refptr<PictureLayer> picture =
1211 PictureLayer::Create(layer_settings(), &client_);
1205 picture->SetBounds(gfx::Size(10, 10)); 1212 picture->SetBounds(gfx::Size(10, 10));
1206 picture->SetIsDrawable(true); 1213 picture->SetIsDrawable(true);
1207 root->AddChild(picture); 1214 root->AddChild(picture);
1208 1215
1209 layer_tree_host()->SetRootLayer(root); 1216 layer_tree_host()->SetRootLayer(root);
1210 LayerTreeHostContextTest::SetupTree(); 1217 LayerTreeHostContextTest::SetupTree();
1211 } 1218 }
1212 1219
1213 void BeginTest() override { 1220 void BeginTest() override {
1214 times_to_lose_during_commit_ = 1; 1221 times_to_lose_during_commit_ = 1;
1215 PostSetNeedsCommitToMainThread(); 1222 PostSetNeedsCommitToMainThread();
1216 } 1223 }
1217 1224
1218 void AfterTest() override {} 1225 void AfterTest() override {}
1219 1226
1220 void DidInitializeOutputSurface() override { EndTest(); } 1227 void DidInitializeOutputSurface() override { EndTest(); }
1221 1228
1222 private: 1229 private:
1223 FakeContentLayerClient client_; 1230 FakeContentLayerClient client_;
1224 }; 1231 };
1225 1232
1226 MULTI_THREAD_TEST_F(LayerTreeHostContextTestImplSidePainting); 1233 MULTI_THREAD_TEST_F(LayerTreeHostContextTestImplSidePainting);
1227 1234
1228 class ScrollbarLayerLostContext : public LayerTreeHostContextTest { 1235 class ScrollbarLayerLostContext : public LayerTreeHostContextTest {
1229 public: 1236 public:
1230 ScrollbarLayerLostContext() : commits_(0) {} 1237 ScrollbarLayerLostContext() : commits_(0) {}
1231 1238
1232 void BeginTest() override { 1239 void BeginTest() override {
1233 scoped_refptr<Layer> scroll_layer = Layer::Create(); 1240 scoped_refptr<Layer> scroll_layer = Layer::Create(layer_settings());
1234 scrollbar_layer_ = 1241 scrollbar_layer_ = FakePaintedScrollbarLayer::Create(
1235 FakePaintedScrollbarLayer::Create(false, true, scroll_layer->id()); 1242 layer_settings(), false, true, scroll_layer->id());
1236 scrollbar_layer_->SetBounds(gfx::Size(10, 100)); 1243 scrollbar_layer_->SetBounds(gfx::Size(10, 100));
1237 layer_tree_host()->root_layer()->AddChild(scrollbar_layer_); 1244 layer_tree_host()->root_layer()->AddChild(scrollbar_layer_);
1238 layer_tree_host()->root_layer()->AddChild(scroll_layer); 1245 layer_tree_host()->root_layer()->AddChild(scroll_layer);
1239 PostSetNeedsCommitToMainThread(); 1246 PostSetNeedsCommitToMainThread();
1240 } 1247 }
1241 1248
1242 void AfterTest() override {} 1249 void AfterTest() override {}
1243 1250
1244 void CommitCompleteOnThread(LayerTreeHostImpl* impl) override { 1251 void CommitCompleteOnThread(LayerTreeHostImpl* impl) override {
1245 LayerTreeHostContextTest::CommitCompleteOnThread(impl); 1252 LayerTreeHostContextTest::CommitCompleteOnThread(impl);
(...skipping 425 matching lines...) Expand 10 before | Expand all | Expand 10 after
1671 SINGLE_AND_MULTI_THREAD_TEST_F(UIResourceLostEviction); 1678 SINGLE_AND_MULTI_THREAD_TEST_F(UIResourceLostEviction);
1672 1679
1673 class LayerTreeHostContextTestSurfaceCreateCallback 1680 class LayerTreeHostContextTestSurfaceCreateCallback
1674 : public LayerTreeHostContextTest { 1681 : public LayerTreeHostContextTest {
1675 public: 1682 public:
1676 LayerTreeHostContextTestSurfaceCreateCallback() 1683 LayerTreeHostContextTestSurfaceCreateCallback()
1677 : LayerTreeHostContextTest() {} 1684 : LayerTreeHostContextTest() {}
1678 1685
1679 void SetupTree() override { 1686 void SetupTree() override {
1680 if (layer_tree_host()->settings().impl_side_painting) { 1687 if (layer_tree_host()->settings().impl_side_painting) {
1681 picture_layer_ = FakePictureLayer::Create(&client_); 1688 picture_layer_ = FakePictureLayer::Create(layer_settings(), &client_);
1682 picture_layer_->SetBounds(gfx::Size(10, 20)); 1689 picture_layer_->SetBounds(gfx::Size(10, 20));
1683 layer_tree_host()->SetRootLayer(picture_layer_); 1690 layer_tree_host()->SetRootLayer(picture_layer_);
1684 } else { 1691 } else {
1685 content_layer_ = FakeContentLayer::Create(&client_); 1692 content_layer_ = FakeContentLayer::Create(layer_settings(), &client_);
1686 content_layer_->SetBounds(gfx::Size(10, 20)); 1693 content_layer_->SetBounds(gfx::Size(10, 20));
1687 layer_tree_host()->SetRootLayer(content_layer_); 1694 layer_tree_host()->SetRootLayer(content_layer_);
1688 } 1695 }
1689 1696
1690 LayerTreeHostContextTest::SetupTree(); 1697 LayerTreeHostContextTest::SetupTree();
1691 } 1698 }
1692 1699
1693 void BeginTest() override { PostSetNeedsCommitToMainThread(); } 1700 void BeginTest() override { PostSetNeedsCommitToMainThread(); }
1694 1701
1695 void DidCommit() override { 1702 void DidCommit() override {
(...skipping 94 matching lines...) Expand 10 before | Expand all | Expand 10 after
1790 void AfterTest() override {} 1797 void AfterTest() override {}
1791 1798
1792 bool deferred_; 1799 bool deferred_;
1793 }; 1800 };
1794 1801
1795 SINGLE_AND_MULTI_THREAD_TEST_F( 1802 SINGLE_AND_MULTI_THREAD_TEST_F(
1796 LayerTreeHostContextTestLoseAfterSendingBeginMainFrame); 1803 LayerTreeHostContextTestLoseAfterSendingBeginMainFrame);
1797 1804
1798 } // namespace 1805 } // namespace
1799 } // namespace cc 1806 } // namespace cc
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698