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

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 126 matching lines...) Expand 10 before | Expand all | Expand 10 after
1007 ResourceId resource = child_resource_provider_->CreateResource( 1007 ResourceId resource = child_resource_provider_->CreateResource(
1008 gfx::Size(4, 4), GL_CLAMP_TO_EDGE, 1008 gfx::Size(4, 4), GL_CLAMP_TO_EDGE,
1009 ResourceProvider::TEXTURE_HINT_IMMUTABLE, RGBA_8888); 1009 ResourceProvider::TEXTURE_HINT_IMMUTABLE, RGBA_8888);
1010 ResourceProvider::ScopedWriteLockGL lock(child_resource_provider_.get(), 1010 ResourceProvider::ScopedWriteLockGL lock(child_resource_provider_.get(),
1011 resource); 1011 resource);
1012 1012
1013 gpu::Mailbox mailbox; 1013 gpu::Mailbox mailbox;
1014 gl->GenMailboxCHROMIUM(mailbox.name); 1014 gl->GenMailboxCHROMIUM(mailbox.name);
1015 GLuint sync_point = gl->InsertSyncPointCHROMIUM(); 1015 GLuint sync_point = gl->InsertSyncPointCHROMIUM();
1016 1016
1017 scoped_refptr<Layer> root = Layer::Create(); 1017 scoped_refptr<Layer> root = Layer::Create(layer_settings());
1018 root->SetBounds(gfx::Size(10, 10)); 1018 root->SetBounds(gfx::Size(10, 10));
1019 root->SetIsDrawable(true); 1019 root->SetIsDrawable(true);
1020 1020
1021 scoped_refptr<FakeDelegatedRendererLayer> delegated = 1021 scoped_refptr<FakeDelegatedRendererLayer> delegated =
1022 FakeDelegatedRendererLayer::Create(delegated_frame_provider_.get()); 1022 FakeDelegatedRendererLayer::Create(layer_settings(),
1023 delegated_frame_provider_.get());
1023 delegated->SetBounds(gfx::Size(10, 10)); 1024 delegated->SetBounds(gfx::Size(10, 10));
1024 delegated->SetIsDrawable(true); 1025 delegated->SetIsDrawable(true);
1025 root->AddChild(delegated); 1026 root->AddChild(delegated);
1026 1027
1027 scoped_refptr<Layer> layer; 1028 scoped_refptr<Layer> layer;
1028 if (layer_tree_host()->settings().impl_side_painting) 1029 if (layer_tree_host()->settings().impl_side_painting)
1029 layer = PictureLayer::Create(&client_); 1030 layer = PictureLayer::Create(layer_settings(), &client_);
1030 else 1031 else
1031 layer = ContentLayer::Create(&client_); 1032 layer = ContentLayer::Create(layer_settings(), &client_);
1032 layer->SetBounds(gfx::Size(10, 10)); 1033 layer->SetBounds(gfx::Size(10, 10));
1033 layer->SetIsDrawable(true); 1034 layer->SetIsDrawable(true);
1034 root->AddChild(layer); 1035 root->AddChild(layer);
1035 1036
1036 scoped_refptr<TextureLayer> texture = TextureLayer::CreateForMailbox(NULL); 1037 scoped_refptr<TextureLayer> texture =
1038 TextureLayer::CreateForMailbox(layer_settings_, NULL);
1037 texture->SetBounds(gfx::Size(10, 10)); 1039 texture->SetBounds(gfx::Size(10, 10));
1038 texture->SetIsDrawable(true); 1040 texture->SetIsDrawable(true);
1039 texture->SetTextureMailbox( 1041 texture->SetTextureMailbox(
1040 TextureMailbox(mailbox, GL_TEXTURE_2D, sync_point), 1042 TextureMailbox(mailbox, GL_TEXTURE_2D, sync_point),
1041 SingleReleaseCallback::Create( 1043 SingleReleaseCallback::Create(
1042 base::Bind(&LayerTreeHostContextTestDontUseLostResources:: 1044 base::Bind(&LayerTreeHostContextTestDontUseLostResources::
1043 EmptyReleaseCallback))); 1045 EmptyReleaseCallback)));
1044 root->AddChild(texture); 1046 root->AddChild(texture);
1045 1047
1046 scoped_refptr<Layer> mask; 1048 scoped_refptr<Layer> mask;
1047 if (layer_tree_host()->settings().impl_side_painting) 1049 if (layer_tree_host()->settings().impl_side_painting)
1048 mask = PictureLayer::Create(&client_); 1050 mask = PictureLayer::Create(layer_settings_, &client_);
1049 else 1051 else
1050 mask = ContentLayer::Create(&client_); 1052 mask = ContentLayer::Create(layer_settings_, &client_);
1051 mask->SetBounds(gfx::Size(10, 10)); 1053 mask->SetBounds(gfx::Size(10, 10));
1052 1054
1053 scoped_refptr<Layer> layer_with_mask; 1055 scoped_refptr<Layer> layer_with_mask;
1054 if (layer_tree_host()->settings().impl_side_painting) 1056 if (layer_tree_host()->settings().impl_side_painting)
1055 layer_with_mask = PictureLayer::Create(&client_); 1057 layer_with_mask = PictureLayer::Create(layer_settings_, &client_);
1056 else 1058 else
1057 layer_with_mask = ContentLayer::Create(&client_); 1059 layer_with_mask = ContentLayer::Create(layer_settings_, &client_);
1058 layer_with_mask->SetBounds(gfx::Size(10, 10)); 1060 layer_with_mask->SetBounds(gfx::Size(10, 10));
1059 layer_with_mask->SetIsDrawable(true); 1061 layer_with_mask->SetIsDrawable(true);
1060 layer_with_mask->SetMaskLayer(mask.get()); 1062 layer_with_mask->SetMaskLayer(mask.get());
1061 root->AddChild(layer_with_mask); 1063 root->AddChild(layer_with_mask);
1062 1064
1063 scoped_refptr<VideoLayer> video_color = 1065 scoped_refptr<VideoLayer> video_color = VideoLayer::Create(
1064 VideoLayer::Create(&color_frame_provider_, media::VIDEO_ROTATION_0); 1066 layer_settings_, &color_frame_provider_, media::VIDEO_ROTATION_0);
1065 video_color->SetBounds(gfx::Size(10, 10)); 1067 video_color->SetBounds(gfx::Size(10, 10));
1066 video_color->SetIsDrawable(true); 1068 video_color->SetIsDrawable(true);
1067 root->AddChild(video_color); 1069 root->AddChild(video_color);
1068 1070
1069 scoped_refptr<VideoLayer> video_hw = 1071 scoped_refptr<VideoLayer> video_hw = VideoLayer::Create(
1070 VideoLayer::Create(&hw_frame_provider_, media::VIDEO_ROTATION_0); 1072 layer_settings_, &hw_frame_provider_, media::VIDEO_ROTATION_0);
1071 video_hw->SetBounds(gfx::Size(10, 10)); 1073 video_hw->SetBounds(gfx::Size(10, 10));
1072 video_hw->SetIsDrawable(true); 1074 video_hw->SetIsDrawable(true);
1073 root->AddChild(video_hw); 1075 root->AddChild(video_hw);
1074 1076
1075 scoped_refptr<VideoLayer> video_scaled_hw = 1077 scoped_refptr<VideoLayer> video_scaled_hw = VideoLayer::Create(
1076 VideoLayer::Create(&scaled_hw_frame_provider_, media::VIDEO_ROTATION_0); 1078 layer_settings_, &scaled_hw_frame_provider_, media::VIDEO_ROTATION_0);
1077 video_scaled_hw->SetBounds(gfx::Size(10, 10)); 1079 video_scaled_hw->SetBounds(gfx::Size(10, 10));
1078 video_scaled_hw->SetIsDrawable(true); 1080 video_scaled_hw->SetIsDrawable(true);
1079 root->AddChild(video_scaled_hw); 1081 root->AddChild(video_scaled_hw);
1080 1082
1081 color_video_frame_ = VideoFrame::CreateColorFrame( 1083 color_video_frame_ = VideoFrame::CreateColorFrame(
1082 gfx::Size(4, 4), 0x80, 0x80, 0x80, base::TimeDelta()); 1084 gfx::Size(4, 4), 0x80, 0x80, 0x80, base::TimeDelta());
1083 hw_video_frame_ = VideoFrame::WrapNativeTexture( 1085 hw_video_frame_ = VideoFrame::WrapNativeTexture(
1084 gpu::MailboxHolder(mailbox, GL_TEXTURE_2D, sync_point), 1086 gpu::MailboxHolder(mailbox, GL_TEXTURE_2D, sync_point),
1085 media::VideoFrame::ReleaseMailboxCB(), gfx::Size(4, 4), 1087 media::VideoFrame::ReleaseMailboxCB(), gfx::Size(4, 4),
1086 gfx::Rect(0, 0, 4, 4), gfx::Size(4, 4), base::TimeDelta(), 1088 gfx::Rect(0, 0, 4, 4), gfx::Size(4, 4), base::TimeDelta(),
1087 false /* allow_overlay */, true /* has_alpha */); 1089 false /* allow_overlay */, true /* has_alpha */);
1088 scaled_hw_video_frame_ = VideoFrame::WrapNativeTexture( 1090 scaled_hw_video_frame_ = VideoFrame::WrapNativeTexture(
1089 gpu::MailboxHolder(mailbox, GL_TEXTURE_2D, sync_point), 1091 gpu::MailboxHolder(mailbox, GL_TEXTURE_2D, sync_point),
1090 media::VideoFrame::ReleaseMailboxCB(), gfx::Size(4, 4), 1092 media::VideoFrame::ReleaseMailboxCB(), gfx::Size(4, 4),
1091 gfx::Rect(0, 0, 3, 2), gfx::Size(4, 4), base::TimeDelta(), 1093 gfx::Rect(0, 0, 3, 2), gfx::Size(4, 4), base::TimeDelta(),
1092 false /* allow_overlay */, true /* has_alpha */); 1094 false /* allow_overlay */, true /* has_alpha */);
1093 1095
1094 color_frame_provider_.set_frame(color_video_frame_); 1096 color_frame_provider_.set_frame(color_video_frame_);
1095 hw_frame_provider_.set_frame(hw_video_frame_); 1097 hw_frame_provider_.set_frame(hw_video_frame_);
1096 scaled_hw_frame_provider_.set_frame(scaled_hw_video_frame_); 1098 scaled_hw_frame_provider_.set_frame(scaled_hw_video_frame_);
1097 1099
1098 if (!delegating_renderer()) { 1100 if (!delegating_renderer()) {
1099 // TODO(danakj): IOSurface layer can not be transported. crbug.com/239335 1101 // TODO(danakj): IOSurface layer can not be transported. crbug.com/239335
1100 scoped_refptr<IOSurfaceLayer> io_surface = IOSurfaceLayer::Create(); 1102 scoped_refptr<IOSurfaceLayer> io_surface =
1103 IOSurfaceLayer::Create(layer_settings_);
1101 io_surface->SetBounds(gfx::Size(10, 10)); 1104 io_surface->SetBounds(gfx::Size(10, 10));
1102 io_surface->SetIsDrawable(true); 1105 io_surface->SetIsDrawable(true);
1103 io_surface->SetIOSurfaceProperties(1, gfx::Size(10, 10)); 1106 io_surface->SetIOSurfaceProperties(1, gfx::Size(10, 10));
1104 root->AddChild(io_surface); 1107 root->AddChild(io_surface);
1105 } 1108 }
1106 1109
1107 // Enable the hud. 1110 // Enable the hud.
1108 LayerTreeDebugState debug_state; 1111 LayerTreeDebugState debug_state;
1109 debug_state.show_property_changed_rects = true; 1112 debug_state.show_property_changed_rects = true;
1110 layer_tree_host()->SetDebugState(debug_state); 1113 layer_tree_host()->SetDebugState(debug_state);
1111 1114
1112 scoped_refptr<PaintedScrollbarLayer> scrollbar = 1115 scoped_refptr<PaintedScrollbarLayer> scrollbar =
1113 PaintedScrollbarLayer::Create( 1116 PaintedScrollbarLayer::Create(
1114 scoped_ptr<Scrollbar>(new FakeScrollbar).Pass(), layer->id()); 1117 layer_settings_, scoped_ptr<Scrollbar>(new FakeScrollbar).Pass(),
1118 layer->id());
1115 scrollbar->SetBounds(gfx::Size(10, 10)); 1119 scrollbar->SetBounds(gfx::Size(10, 10));
1116 scrollbar->SetIsDrawable(true); 1120 scrollbar->SetIsDrawable(true);
1117 root->AddChild(scrollbar); 1121 root->AddChild(scrollbar);
1118 1122
1119 layer_tree_host()->SetRootLayer(root); 1123 layer_tree_host()->SetRootLayer(root);
1120 LayerTreeHostContextTest::SetupTree(); 1124 LayerTreeHostContextTest::SetupTree();
1121 } 1125 }
1122 1126
1123 void BeginTest() override { PostSetNeedsCommitToMainThread(); } 1127 void BeginTest() override { PostSetNeedsCommitToMainThread(); }
1124 1128
(...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after
1181 delegated_resource_collection_; 1185 delegated_resource_collection_;
1182 scoped_refptr<DelegatedFrameProvider> delegated_frame_provider_; 1186 scoped_refptr<DelegatedFrameProvider> delegated_frame_provider_;
1183 1187
1184 scoped_refptr<VideoFrame> color_video_frame_; 1188 scoped_refptr<VideoFrame> color_video_frame_;
1185 scoped_refptr<VideoFrame> hw_video_frame_; 1189 scoped_refptr<VideoFrame> hw_video_frame_;
1186 scoped_refptr<VideoFrame> scaled_hw_video_frame_; 1190 scoped_refptr<VideoFrame> scaled_hw_video_frame_;
1187 1191
1188 FakeVideoFrameProvider color_frame_provider_; 1192 FakeVideoFrameProvider color_frame_provider_;
1189 FakeVideoFrameProvider hw_frame_provider_; 1193 FakeVideoFrameProvider hw_frame_provider_;
1190 FakeVideoFrameProvider scaled_hw_frame_provider_; 1194 FakeVideoFrameProvider scaled_hw_frame_provider_;
1195
1196 LayerSettings layer_settings_;
1191 }; 1197 };
1192 1198
1193 SINGLE_AND_MULTI_THREAD_TEST_F(LayerTreeHostContextTestDontUseLostResources); 1199 SINGLE_AND_MULTI_THREAD_TEST_F(LayerTreeHostContextTestDontUseLostResources);
1194 1200
1195 class ImplSidePaintingLayerTreeHostContextTest 1201 class ImplSidePaintingLayerTreeHostContextTest
1196 : public LayerTreeHostContextTest { 1202 : public LayerTreeHostContextTest {
1197 public: 1203 public:
1198 void InitializeSettings(LayerTreeSettings* settings) override { 1204 void InitializeSettings(LayerTreeSettings* settings) override {
1199 settings->impl_side_painting = true; 1205 settings->impl_side_painting = true;
1200 } 1206 }
1201 }; 1207 };
1202 1208
1203 class LayerTreeHostContextTestImplSidePainting 1209 class LayerTreeHostContextTestImplSidePainting
1204 : public ImplSidePaintingLayerTreeHostContextTest { 1210 : public ImplSidePaintingLayerTreeHostContextTest {
1205 public: 1211 public:
1206 void SetupTree() override { 1212 void SetupTree() override {
1207 scoped_refptr<Layer> root = Layer::Create(); 1213 scoped_refptr<Layer> root = Layer::Create(layer_settings());
1208 root->SetBounds(gfx::Size(10, 10)); 1214 root->SetBounds(gfx::Size(10, 10));
1209 root->SetIsDrawable(true); 1215 root->SetIsDrawable(true);
1210 1216
1211 scoped_refptr<PictureLayer> picture = PictureLayer::Create(&client_); 1217 scoped_refptr<PictureLayer> picture =
1218 PictureLayer::Create(layer_settings(), &client_);
1212 picture->SetBounds(gfx::Size(10, 10)); 1219 picture->SetBounds(gfx::Size(10, 10));
1213 picture->SetIsDrawable(true); 1220 picture->SetIsDrawable(true);
1214 root->AddChild(picture); 1221 root->AddChild(picture);
1215 1222
1216 layer_tree_host()->SetRootLayer(root); 1223 layer_tree_host()->SetRootLayer(root);
1217 LayerTreeHostContextTest::SetupTree(); 1224 LayerTreeHostContextTest::SetupTree();
1218 } 1225 }
1219 1226
1220 void BeginTest() override { 1227 void BeginTest() override {
1221 times_to_lose_during_commit_ = 1; 1228 times_to_lose_during_commit_ = 1;
1222 PostSetNeedsCommitToMainThread(); 1229 PostSetNeedsCommitToMainThread();
1223 } 1230 }
1224 1231
1225 void AfterTest() override {} 1232 void AfterTest() override {}
1226 1233
1227 void DidInitializeOutputSurface() override { EndTest(); } 1234 void DidInitializeOutputSurface() override { EndTest(); }
1228 1235
1229 private: 1236 private:
1230 FakeContentLayerClient client_; 1237 FakeContentLayerClient client_;
1231 }; 1238 };
1232 1239
1233 MULTI_THREAD_TEST_F(LayerTreeHostContextTestImplSidePainting); 1240 MULTI_THREAD_TEST_F(LayerTreeHostContextTestImplSidePainting);
1234 1241
1235 class ScrollbarLayerLostContext : public LayerTreeHostContextTest { 1242 class ScrollbarLayerLostContext : public LayerTreeHostContextTest {
1236 public: 1243 public:
1237 ScrollbarLayerLostContext() : commits_(0) {} 1244 ScrollbarLayerLostContext() : commits_(0) {}
1238 1245
1239 void BeginTest() override { 1246 void BeginTest() override {
1240 scoped_refptr<Layer> scroll_layer = Layer::Create(); 1247 scoped_refptr<Layer> scroll_layer = Layer::Create(layer_settings());
1241 scrollbar_layer_ = 1248 scrollbar_layer_ = FakePaintedScrollbarLayer::Create(
1242 FakePaintedScrollbarLayer::Create(false, true, scroll_layer->id()); 1249 layer_settings(), false, true, scroll_layer->id());
1243 scrollbar_layer_->SetBounds(gfx::Size(10, 100)); 1250 scrollbar_layer_->SetBounds(gfx::Size(10, 100));
1244 layer_tree_host()->root_layer()->AddChild(scrollbar_layer_); 1251 layer_tree_host()->root_layer()->AddChild(scrollbar_layer_);
1245 layer_tree_host()->root_layer()->AddChild(scroll_layer); 1252 layer_tree_host()->root_layer()->AddChild(scroll_layer);
1246 PostSetNeedsCommitToMainThread(); 1253 PostSetNeedsCommitToMainThread();
1247 } 1254 }
1248 1255
1249 void AfterTest() override {} 1256 void AfterTest() override {}
1250 1257
1251 void CommitCompleteOnThread(LayerTreeHostImpl* impl) override { 1258 void CommitCompleteOnThread(LayerTreeHostImpl* impl) override {
1252 LayerTreeHostContextTest::CommitCompleteOnThread(impl); 1259 LayerTreeHostContextTest::CommitCompleteOnThread(impl);
(...skipping 425 matching lines...) Expand 10 before | Expand all | Expand 10 after
1678 SINGLE_AND_MULTI_THREAD_TEST_F(UIResourceLostEviction); 1685 SINGLE_AND_MULTI_THREAD_TEST_F(UIResourceLostEviction);
1679 1686
1680 class LayerTreeHostContextTestSurfaceCreateCallback 1687 class LayerTreeHostContextTestSurfaceCreateCallback
1681 : public LayerTreeHostContextTest { 1688 : public LayerTreeHostContextTest {
1682 public: 1689 public:
1683 LayerTreeHostContextTestSurfaceCreateCallback() 1690 LayerTreeHostContextTestSurfaceCreateCallback()
1684 : LayerTreeHostContextTest() {} 1691 : LayerTreeHostContextTest() {}
1685 1692
1686 void SetupTree() override { 1693 void SetupTree() override {
1687 if (layer_tree_host()->settings().impl_side_painting) { 1694 if (layer_tree_host()->settings().impl_side_painting) {
1688 picture_layer_ = FakePictureLayer::Create(&client_); 1695 picture_layer_ = FakePictureLayer::Create(layer_settings(), &client_);
1689 picture_layer_->SetBounds(gfx::Size(10, 20)); 1696 picture_layer_->SetBounds(gfx::Size(10, 20));
1690 layer_tree_host()->SetRootLayer(picture_layer_); 1697 layer_tree_host()->SetRootLayer(picture_layer_);
1691 } else { 1698 } else {
1692 content_layer_ = FakeContentLayer::Create(&client_); 1699 content_layer_ = FakeContentLayer::Create(layer_settings(), &client_);
1693 content_layer_->SetBounds(gfx::Size(10, 20)); 1700 content_layer_->SetBounds(gfx::Size(10, 20));
1694 layer_tree_host()->SetRootLayer(content_layer_); 1701 layer_tree_host()->SetRootLayer(content_layer_);
1695 } 1702 }
1696 1703
1697 LayerTreeHostContextTest::SetupTree(); 1704 LayerTreeHostContextTest::SetupTree();
1698 } 1705 }
1699 1706
1700 void BeginTest() override { PostSetNeedsCommitToMainThread(); } 1707 void BeginTest() override { PostSetNeedsCommitToMainThread(); }
1701 1708
1702 void DidCommit() override { 1709 void DidCommit() override {
(...skipping 94 matching lines...) Expand 10 before | Expand all | Expand 10 after
1797 void AfterTest() override {} 1804 void AfterTest() override {}
1798 1805
1799 bool deferred_; 1806 bool deferred_;
1800 }; 1807 };
1801 1808
1802 SINGLE_AND_MULTI_THREAD_TEST_F( 1809 SINGLE_AND_MULTI_THREAD_TEST_F(
1803 LayerTreeHostContextTestLoseAfterSendingBeginMainFrame); 1810 LayerTreeHostContextTestLoseAfterSendingBeginMainFrame);
1804 1811
1805 } // namespace 1812 } // namespace
1806 } // namespace cc 1813 } // namespace cc
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698