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/output/gl_renderer.h" | 5 #include "cc/output/gl_renderer.h" |
6 | 6 |
7 #include <set> | 7 #include <set> |
8 | 8 |
9 #include "cc/base/math_util.h" | 9 #include "cc/base/math_util.h" |
10 #include "cc/debug/test_web_graphics_context_3d.h" | 10 #include "cc/debug/test_web_graphics_context_3d.h" |
(...skipping 203 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
214 protected: | 214 protected: |
215 GLRendererTest() { | 215 GLRendererTest() { |
216 scoped_ptr<FrameCountingContext> context3d(new FrameCountingContext); | 216 scoped_ptr<FrameCountingContext> context3d(new FrameCountingContext); |
217 context3d_ = context3d.get(); | 217 context3d_ = context3d.get(); |
218 | 218 |
219 output_surface_ = FakeOutputSurface::Create3d( | 219 output_surface_ = FakeOutputSurface::Create3d( |
220 context3d.PassAs<TestWebGraphicsContext3D>()).Pass(); | 220 context3d.PassAs<TestWebGraphicsContext3D>()).Pass(); |
221 CHECK(output_surface_->BindToClient(&output_surface_client_)); | 221 CHECK(output_surface_->BindToClient(&output_surface_client_)); |
222 | 222 |
223 resource_provider_ = | 223 resource_provider_ = |
224 ResourceProvider::Create(output_surface_.get(), 0).Pass(); | 224 ResourceProvider::Create(output_surface_.get(), 0, false).Pass(); |
225 renderer_ = make_scoped_ptr(new FakeRendererGL(&renderer_client_, | 225 renderer_ = make_scoped_ptr(new FakeRendererGL(&renderer_client_, |
226 &settings_, | 226 &settings_, |
227 output_surface_.get(), | 227 output_surface_.get(), |
228 resource_provider_.get())); | 228 resource_provider_.get())); |
229 } | 229 } |
230 | 230 |
231 virtual void SetUp() { renderer_->Initialize(); } | 231 virtual void SetUp() { renderer_->Initialize(); } |
232 | 232 |
233 void SwapBuffers() { renderer_->SwapBuffers(); } | 233 void SwapBuffers() { renderer_->SwapBuffers(); } |
234 | 234 |
(...skipping 70 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
305 }; | 305 }; |
306 | 306 |
307 class GLRendererShaderTest : public testing::Test { | 307 class GLRendererShaderTest : public testing::Test { |
308 protected: | 308 protected: |
309 GLRendererShaderTest() { | 309 GLRendererShaderTest() { |
310 output_surface_ = FakeOutputSurface::Create3d( | 310 output_surface_ = FakeOutputSurface::Create3d( |
311 scoped_ptr<TestWebGraphicsContext3D>( | 311 scoped_ptr<TestWebGraphicsContext3D>( |
312 new ShaderCreatorMockGraphicsContext())).Pass(); | 312 new ShaderCreatorMockGraphicsContext())).Pass(); |
313 CHECK(output_surface_->BindToClient(&output_surface_client_)); | 313 CHECK(output_surface_->BindToClient(&output_surface_client_)); |
314 | 314 |
315 resource_provider_ = ResourceProvider::Create(output_surface_.get(), | 315 resource_provider_ = ResourceProvider::Create( |
316 0).Pass(); | 316 output_surface_.get(), 0, false).Pass(); |
317 renderer_.reset(new FakeRendererGL(&renderer_client_, | 317 renderer_.reset(new FakeRendererGL(&renderer_client_, |
318 &settings_, | 318 &settings_, |
319 output_surface_.get(), | 319 output_surface_.get(), |
320 resource_provider_.get())); | 320 resource_provider_.get())); |
321 renderer_->Initialize(); | 321 renderer_->Initialize(); |
322 } | 322 } |
323 | 323 |
324 void TestRenderPassProgram() { | 324 void TestRenderPassProgram() { |
325 EXPECT_PROGRAM_VALID(renderer_->render_pass_program_); | 325 EXPECT_PROGRAM_VALID(renderer_->render_pass_program_); |
326 EXPECT_EQ(renderer_->render_pass_program_->program(), | 326 EXPECT_EQ(renderer_->render_pass_program_->program(), |
(...skipping 300 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
627 | 627 |
628 // This test isn't using the same fixture as GLRendererTest, and you can't mix | 628 // This test isn't using the same fixture as GLRendererTest, and you can't mix |
629 // TEST() and TEST_F() with the same name, Hence LRC2. | 629 // TEST() and TEST_F() with the same name, Hence LRC2. |
630 TEST(GLRendererTest2, InitializationDoesNotMakeSynchronousCalls) { | 630 TEST(GLRendererTest2, InitializationDoesNotMakeSynchronousCalls) { |
631 FakeOutputSurfaceClient output_surface_client; | 631 FakeOutputSurfaceClient output_surface_client; |
632 scoped_ptr<OutputSurface> output_surface(FakeOutputSurface::Create3d( | 632 scoped_ptr<OutputSurface> output_surface(FakeOutputSurface::Create3d( |
633 scoped_ptr<TestWebGraphicsContext3D>(new ForbidSynchronousCallContext))); | 633 scoped_ptr<TestWebGraphicsContext3D>(new ForbidSynchronousCallContext))); |
634 CHECK(output_surface->BindToClient(&output_surface_client)); | 634 CHECK(output_surface->BindToClient(&output_surface_client)); |
635 | 635 |
636 scoped_ptr<ResourceProvider> resource_provider( | 636 scoped_ptr<ResourceProvider> resource_provider( |
637 ResourceProvider::Create(output_surface.get(), 0)); | 637 ResourceProvider::Create(output_surface.get(), 0, false)); |
638 | 638 |
639 LayerTreeSettings settings; | 639 LayerTreeSettings settings; |
640 FakeRendererClient renderer_client; | 640 FakeRendererClient renderer_client; |
641 FakeRendererGL renderer(&renderer_client, | 641 FakeRendererGL renderer(&renderer_client, |
642 &settings, | 642 &settings, |
643 output_surface.get(), | 643 output_surface.get(), |
644 resource_provider.get()); | 644 resource_provider.get()); |
645 | 645 |
646 EXPECT_TRUE(renderer.Initialize()); | 646 EXPECT_TRUE(renderer.Initialize()); |
647 } | 647 } |
(...skipping 24 matching lines...) Expand all Loading... |
672 bool context_lost_; | 672 bool context_lost_; |
673 }; | 673 }; |
674 | 674 |
675 TEST(GLRendererTest2, InitializationWithQuicklyLostContextDoesNotAssert) { | 675 TEST(GLRendererTest2, InitializationWithQuicklyLostContextDoesNotAssert) { |
676 FakeOutputSurfaceClient output_surface_client; | 676 FakeOutputSurfaceClient output_surface_client; |
677 scoped_ptr<OutputSurface> output_surface(FakeOutputSurface::Create3d( | 677 scoped_ptr<OutputSurface> output_surface(FakeOutputSurface::Create3d( |
678 scoped_ptr<TestWebGraphicsContext3D>(new LoseContextOnFirstGetContext))); | 678 scoped_ptr<TestWebGraphicsContext3D>(new LoseContextOnFirstGetContext))); |
679 CHECK(output_surface->BindToClient(&output_surface_client)); | 679 CHECK(output_surface->BindToClient(&output_surface_client)); |
680 | 680 |
681 scoped_ptr<ResourceProvider> resource_provider( | 681 scoped_ptr<ResourceProvider> resource_provider( |
682 ResourceProvider::Create(output_surface.get(), 0)); | 682 ResourceProvider::Create(output_surface.get(), 0, false)); |
683 | 683 |
684 LayerTreeSettings settings; | 684 LayerTreeSettings settings; |
685 FakeRendererClient renderer_client; | 685 FakeRendererClient renderer_client; |
686 FakeRendererGL renderer(&renderer_client, | 686 FakeRendererGL renderer(&renderer_client, |
687 &settings, | 687 &settings, |
688 output_surface.get(), | 688 output_surface.get(), |
689 resource_provider.get()); | 689 resource_provider.get()); |
690 | 690 |
691 renderer.Initialize(); | 691 renderer.Initialize(); |
692 } | 692 } |
(...skipping 14 matching lines...) Expand all Loading... |
707 TEST(GLRendererTest2, OpaqueBackground) { | 707 TEST(GLRendererTest2, OpaqueBackground) { |
708 scoped_ptr<ClearCountingContext> context_owned(new ClearCountingContext); | 708 scoped_ptr<ClearCountingContext> context_owned(new ClearCountingContext); |
709 ClearCountingContext* context = context_owned.get(); | 709 ClearCountingContext* context = context_owned.get(); |
710 | 710 |
711 FakeOutputSurfaceClient output_surface_client; | 711 FakeOutputSurfaceClient output_surface_client; |
712 scoped_ptr<OutputSurface> output_surface(FakeOutputSurface::Create3d( | 712 scoped_ptr<OutputSurface> output_surface(FakeOutputSurface::Create3d( |
713 context_owned.PassAs<TestWebGraphicsContext3D>())); | 713 context_owned.PassAs<TestWebGraphicsContext3D>())); |
714 CHECK(output_surface->BindToClient(&output_surface_client)); | 714 CHECK(output_surface->BindToClient(&output_surface_client)); |
715 | 715 |
716 scoped_ptr<ResourceProvider> resource_provider( | 716 scoped_ptr<ResourceProvider> resource_provider( |
717 ResourceProvider::Create(output_surface.get(), 0)); | 717 ResourceProvider::Create(output_surface.get(), 0, false)); |
718 | 718 |
719 LayerTreeSettings settings; | 719 LayerTreeSettings settings; |
720 FakeRendererClient renderer_client; | 720 FakeRendererClient renderer_client; |
721 FakeRendererGL renderer(&renderer_client, | 721 FakeRendererGL renderer(&renderer_client, |
722 &settings, | 722 &settings, |
723 output_surface.get(), | 723 output_surface.get(), |
724 resource_provider.get()); | 724 resource_provider.get()); |
725 | 725 |
726 renderer_client.root_render_pass()->has_transparent_background = false; | 726 renderer_client.root_render_pass()->has_transparent_background = false; |
727 | 727 |
(...skipping 17 matching lines...) Expand all Loading... |
745 TEST(GLRendererTest2, TransparentBackground) { | 745 TEST(GLRendererTest2, TransparentBackground) { |
746 scoped_ptr<ClearCountingContext> context_owned(new ClearCountingContext); | 746 scoped_ptr<ClearCountingContext> context_owned(new ClearCountingContext); |
747 ClearCountingContext* context = context_owned.get(); | 747 ClearCountingContext* context = context_owned.get(); |
748 | 748 |
749 FakeOutputSurfaceClient output_surface_client; | 749 FakeOutputSurfaceClient output_surface_client; |
750 scoped_ptr<OutputSurface> output_surface(FakeOutputSurface::Create3d( | 750 scoped_ptr<OutputSurface> output_surface(FakeOutputSurface::Create3d( |
751 context_owned.PassAs<TestWebGraphicsContext3D>())); | 751 context_owned.PassAs<TestWebGraphicsContext3D>())); |
752 CHECK(output_surface->BindToClient(&output_surface_client)); | 752 CHECK(output_surface->BindToClient(&output_surface_client)); |
753 | 753 |
754 scoped_ptr<ResourceProvider> resource_provider( | 754 scoped_ptr<ResourceProvider> resource_provider( |
755 ResourceProvider::Create(output_surface.get(), 0)); | 755 ResourceProvider::Create(output_surface.get(), 0, false)); |
756 | 756 |
757 LayerTreeSettings settings; | 757 LayerTreeSettings settings; |
758 FakeRendererClient renderer_client; | 758 FakeRendererClient renderer_client; |
759 FakeRendererGL renderer(&renderer_client, | 759 FakeRendererGL renderer(&renderer_client, |
760 &settings, | 760 &settings, |
761 output_surface.get(), | 761 output_surface.get(), |
762 resource_provider.get()); | 762 resource_provider.get()); |
763 | 763 |
764 renderer_client.root_render_pass()->has_transparent_background = true; | 764 renderer_client.root_render_pass()->has_transparent_background = true; |
765 | 765 |
(...skipping 11 matching lines...) Expand all Loading... |
777 TEST(GLRendererTest2, OffscreenOutputSurface) { | 777 TEST(GLRendererTest2, OffscreenOutputSurface) { |
778 scoped_ptr<ClearCountingContext> context_owned(new ClearCountingContext); | 778 scoped_ptr<ClearCountingContext> context_owned(new ClearCountingContext); |
779 ClearCountingContext* context = context_owned.get(); | 779 ClearCountingContext* context = context_owned.get(); |
780 | 780 |
781 FakeOutputSurfaceClient output_surface_client; | 781 FakeOutputSurfaceClient output_surface_client; |
782 scoped_ptr<OutputSurface> output_surface(FakeOutputSurface::CreateOffscreen( | 782 scoped_ptr<OutputSurface> output_surface(FakeOutputSurface::CreateOffscreen( |
783 context_owned.PassAs<TestWebGraphicsContext3D>())); | 783 context_owned.PassAs<TestWebGraphicsContext3D>())); |
784 CHECK(output_surface->BindToClient(&output_surface_client)); | 784 CHECK(output_surface->BindToClient(&output_surface_client)); |
785 | 785 |
786 scoped_ptr<ResourceProvider> resource_provider( | 786 scoped_ptr<ResourceProvider> resource_provider( |
787 ResourceProvider::Create(output_surface.get(), 0)); | 787 ResourceProvider::Create(output_surface.get(), 0, false)); |
788 | 788 |
789 LayerTreeSettings settings; | 789 LayerTreeSettings settings; |
790 FakeRendererClient renderer_client; | 790 FakeRendererClient renderer_client; |
791 FakeRendererGL renderer(&renderer_client, | 791 FakeRendererGL renderer(&renderer_client, |
792 &settings, | 792 &settings, |
793 output_surface.get(), | 793 output_surface.get(), |
794 resource_provider.get()); | 794 resource_provider.get()); |
795 | 795 |
796 EXPECT_TRUE(renderer.Initialize()); | 796 EXPECT_TRUE(renderer.Initialize()); |
797 | 797 |
(...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
853 scoped_ptr<VisibilityChangeIsLastCallTrackingContext> context_owned( | 853 scoped_ptr<VisibilityChangeIsLastCallTrackingContext> context_owned( |
854 new VisibilityChangeIsLastCallTrackingContext); | 854 new VisibilityChangeIsLastCallTrackingContext); |
855 VisibilityChangeIsLastCallTrackingContext* context = context_owned.get(); | 855 VisibilityChangeIsLastCallTrackingContext* context = context_owned.get(); |
856 | 856 |
857 FakeOutputSurfaceClient output_surface_client; | 857 FakeOutputSurfaceClient output_surface_client; |
858 scoped_ptr<OutputSurface> output_surface(FakeOutputSurface::Create3d( | 858 scoped_ptr<OutputSurface> output_surface(FakeOutputSurface::Create3d( |
859 context_owned.PassAs<TestWebGraphicsContext3D>())); | 859 context_owned.PassAs<TestWebGraphicsContext3D>())); |
860 CHECK(output_surface->BindToClient(&output_surface_client)); | 860 CHECK(output_surface->BindToClient(&output_surface_client)); |
861 | 861 |
862 scoped_ptr<ResourceProvider> resource_provider( | 862 scoped_ptr<ResourceProvider> resource_provider( |
863 ResourceProvider::Create(output_surface.get(), 0)); | 863 ResourceProvider::Create(output_surface.get(), 0, false)); |
864 | 864 |
865 LayerTreeSettings settings; | 865 LayerTreeSettings settings; |
866 FakeRendererClient renderer_client; | 866 FakeRendererClient renderer_client; |
867 FakeRendererGL renderer(&renderer_client, | 867 FakeRendererGL renderer(&renderer_client, |
868 &settings, | 868 &settings, |
869 output_surface.get(), | 869 output_surface.get(), |
870 resource_provider.get()); | 870 resource_provider.get()); |
871 | 871 |
872 EXPECT_TRUE(renderer.Initialize()); | 872 EXPECT_TRUE(renderer.Initialize()); |
873 | 873 |
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
913 scoped_ptr<TextureStateTrackingContext> context_owned( | 913 scoped_ptr<TextureStateTrackingContext> context_owned( |
914 new TextureStateTrackingContext); | 914 new TextureStateTrackingContext); |
915 TextureStateTrackingContext* context = context_owned.get(); | 915 TextureStateTrackingContext* context = context_owned.get(); |
916 | 916 |
917 FakeOutputSurfaceClient output_surface_client; | 917 FakeOutputSurfaceClient output_surface_client; |
918 scoped_ptr<OutputSurface> output_surface(FakeOutputSurface::Create3d( | 918 scoped_ptr<OutputSurface> output_surface(FakeOutputSurface::Create3d( |
919 context_owned.PassAs<TestWebGraphicsContext3D>())); | 919 context_owned.PassAs<TestWebGraphicsContext3D>())); |
920 CHECK(output_surface->BindToClient(&output_surface_client)); | 920 CHECK(output_surface->BindToClient(&output_surface_client)); |
921 | 921 |
922 scoped_ptr<ResourceProvider> resource_provider( | 922 scoped_ptr<ResourceProvider> resource_provider( |
923 ResourceProvider::Create(output_surface.get(), 0)); | 923 ResourceProvider::Create(output_surface.get(), 0, false)); |
924 | 924 |
925 LayerTreeSettings settings; | 925 LayerTreeSettings settings; |
926 FakeRendererClient renderer_client; | 926 FakeRendererClient renderer_client; |
927 FakeRendererGL renderer(&renderer_client, | 927 FakeRendererGL renderer(&renderer_client, |
928 &settings, | 928 &settings, |
929 output_surface.get(), | 929 output_surface.get(), |
930 resource_provider.get()); | 930 resource_provider.get()); |
931 | 931 |
932 // During initialization we are allowed to set any texture parameters. | 932 // During initialization we are allowed to set any texture parameters. |
933 EXPECT_CALL(*context, texParameteri(_, _, _)).Times(AnyNumber()); | 933 EXPECT_CALL(*context, texParameteri(_, _, _)).Times(AnyNumber()); |
(...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1000 scoped_ptr<NoClearRootRenderPassMockContext> mock_context_owned( | 1000 scoped_ptr<NoClearRootRenderPassMockContext> mock_context_owned( |
1001 new NoClearRootRenderPassMockContext); | 1001 new NoClearRootRenderPassMockContext); |
1002 NoClearRootRenderPassMockContext* mock_context = mock_context_owned.get(); | 1002 NoClearRootRenderPassMockContext* mock_context = mock_context_owned.get(); |
1003 | 1003 |
1004 FakeOutputSurfaceClient output_surface_client; | 1004 FakeOutputSurfaceClient output_surface_client; |
1005 scoped_ptr<OutputSurface> output_surface(FakeOutputSurface::Create3d( | 1005 scoped_ptr<OutputSurface> output_surface(FakeOutputSurface::Create3d( |
1006 mock_context_owned.PassAs<TestWebGraphicsContext3D>())); | 1006 mock_context_owned.PassAs<TestWebGraphicsContext3D>())); |
1007 CHECK(output_surface->BindToClient(&output_surface_client)); | 1007 CHECK(output_surface->BindToClient(&output_surface_client)); |
1008 | 1008 |
1009 scoped_ptr<ResourceProvider> resource_provider( | 1009 scoped_ptr<ResourceProvider> resource_provider( |
1010 ResourceProvider::Create(output_surface.get(), 0)); | 1010 ResourceProvider::Create(output_surface.get(), 0, false)); |
1011 | 1011 |
1012 LayerTreeSettings settings; | 1012 LayerTreeSettings settings; |
1013 settings.should_clear_root_render_pass = false; | 1013 settings.should_clear_root_render_pass = false; |
1014 | 1014 |
1015 FakeRendererClient renderer_client; | 1015 FakeRendererClient renderer_client; |
1016 FakeRendererGL renderer(&renderer_client, | 1016 FakeRendererGL renderer(&renderer_client, |
1017 &settings, | 1017 &settings, |
1018 output_surface.get(), | 1018 output_surface.get(), |
1019 resource_provider.get()); | 1019 resource_provider.get()); |
1020 EXPECT_TRUE(renderer.Initialize()); | 1020 EXPECT_TRUE(renderer.Initialize()); |
(...skipping 67 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1088 TEST(GLRendererTest2, ScissorTestWhenClearing) { | 1088 TEST(GLRendererTest2, ScissorTestWhenClearing) { |
1089 scoped_ptr<ScissorTestOnClearCheckingContext> context_owned( | 1089 scoped_ptr<ScissorTestOnClearCheckingContext> context_owned( |
1090 new ScissorTestOnClearCheckingContext); | 1090 new ScissorTestOnClearCheckingContext); |
1091 | 1091 |
1092 FakeOutputSurfaceClient output_surface_client; | 1092 FakeOutputSurfaceClient output_surface_client; |
1093 scoped_ptr<OutputSurface> output_surface(FakeOutputSurface::Create3d( | 1093 scoped_ptr<OutputSurface> output_surface(FakeOutputSurface::Create3d( |
1094 context_owned.PassAs<TestWebGraphicsContext3D>())); | 1094 context_owned.PassAs<TestWebGraphicsContext3D>())); |
1095 CHECK(output_surface->BindToClient(&output_surface_client)); | 1095 CHECK(output_surface->BindToClient(&output_surface_client)); |
1096 | 1096 |
1097 scoped_ptr<ResourceProvider> resource_provider( | 1097 scoped_ptr<ResourceProvider> resource_provider( |
1098 ResourceProvider::Create(output_surface.get(), 0)); | 1098 ResourceProvider::Create(output_surface.get(), 0, false)); |
1099 | 1099 |
1100 LayerTreeSettings settings; | 1100 LayerTreeSettings settings; |
1101 FakeRendererClient renderer_client; | 1101 FakeRendererClient renderer_client; |
1102 FakeRendererGL renderer(&renderer_client, | 1102 FakeRendererGL renderer(&renderer_client, |
1103 &settings, | 1103 &settings, |
1104 output_surface.get(), | 1104 output_surface.get(), |
1105 resource_provider.get()); | 1105 resource_provider.get()); |
1106 EXPECT_TRUE(renderer.Initialize()); | 1106 EXPECT_TRUE(renderer.Initialize()); |
1107 EXPECT_FALSE(renderer.Capabilities().using_partial_swap); | 1107 EXPECT_FALSE(renderer.Capabilities().using_partial_swap); |
1108 | 1108 |
(...skipping 82 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1191 // the glViewport can be at a nonzero origin within the surface. | 1191 // the glViewport can be at a nonzero origin within the surface. |
1192 scoped_ptr<FlippedScissorAndViewportContext> context_owned( | 1192 scoped_ptr<FlippedScissorAndViewportContext> context_owned( |
1193 new FlippedScissorAndViewportContext); | 1193 new FlippedScissorAndViewportContext); |
1194 | 1194 |
1195 FakeOutputSurfaceClient output_surface_client; | 1195 FakeOutputSurfaceClient output_surface_client; |
1196 scoped_ptr<OutputSurface> output_surface(new NonReshapableOutputSurface( | 1196 scoped_ptr<OutputSurface> output_surface(new NonReshapableOutputSurface( |
1197 context_owned.PassAs<TestWebGraphicsContext3D>())); | 1197 context_owned.PassAs<TestWebGraphicsContext3D>())); |
1198 CHECK(output_surface->BindToClient(&output_surface_client)); | 1198 CHECK(output_surface->BindToClient(&output_surface_client)); |
1199 | 1199 |
1200 scoped_ptr<ResourceProvider> resource_provider( | 1200 scoped_ptr<ResourceProvider> resource_provider( |
1201 ResourceProvider::Create(output_surface.get(), 0)); | 1201 ResourceProvider::Create(output_surface.get(), 0, false)); |
1202 | 1202 |
1203 LayerTreeSettings settings; | 1203 LayerTreeSettings settings; |
1204 OffsetViewportRendererClient renderer_client; | 1204 OffsetViewportRendererClient renderer_client; |
1205 FakeRendererGL renderer(&renderer_client, | 1205 FakeRendererGL renderer(&renderer_client, |
1206 &settings, | 1206 &settings, |
1207 output_surface.get(), | 1207 output_surface.get(), |
1208 resource_provider.get()); | 1208 resource_provider.get()); |
1209 EXPECT_TRUE(renderer.Initialize()); | 1209 EXPECT_TRUE(renderer.Initialize()); |
1210 EXPECT_FALSE(renderer.Capabilities().using_partial_swap); | 1210 EXPECT_FALSE(renderer.Capabilities().using_partial_swap); |
1211 | 1211 |
(...skipping 21 matching lines...) Expand all Loading... |
1233 | 1233 |
1234 gfx::Rect child_rect(50, 50); | 1234 gfx::Rect child_rect(50, 50); |
1235 RenderPass::Id child_pass_id(2, 0); | 1235 RenderPass::Id child_pass_id(2, 0); |
1236 TestRenderPass* child_pass; | 1236 TestRenderPass* child_pass; |
1237 | 1237 |
1238 RenderPass::Id root_pass_id(1, 0); | 1238 RenderPass::Id root_pass_id(1, 0); |
1239 TestRenderPass* root_pass; | 1239 TestRenderPass* root_pass; |
1240 | 1240 |
1241 cc::ResourceProvider::ResourceId mask = | 1241 cc::ResourceProvider::ResourceId mask = |
1242 resource_provider_->CreateResource(gfx::Size(20, 12), | 1242 resource_provider_->CreateResource(gfx::Size(20, 12), |
1243 resource_provider_->best_texture_format(), | |
1244 GL_CLAMP_TO_EDGE, | 1243 GL_CLAMP_TO_EDGE, |
1245 ResourceProvider::TextureUsageAny); | 1244 ResourceProvider::TextureUsageAny, |
| 1245 resource_provider_->best_texture_format()); |
1246 resource_provider_->AllocateForTesting(mask); | 1246 resource_provider_->AllocateForTesting(mask); |
1247 | 1247 |
1248 SkScalar matrix[20]; | 1248 SkScalar matrix[20]; |
1249 float amount = 0.5f; | 1249 float amount = 0.5f; |
1250 matrix[0] = 0.213f + 0.787f * amount; | 1250 matrix[0] = 0.213f + 0.787f * amount; |
1251 matrix[1] = 0.715f - 0.715f * amount; | 1251 matrix[1] = 0.715f - 0.715f * amount; |
1252 matrix[2] = 1.f - (matrix[0] + matrix[1]); | 1252 matrix[2] = 1.f - (matrix[0] + matrix[1]); |
1253 matrix[3] = matrix[4] = 0; | 1253 matrix[3] = matrix[4] = 0; |
1254 matrix[5] = 0.213f - 0.213f * amount; | 1254 matrix[5] = 0.213f - 0.213f * amount; |
1255 matrix[6] = 0.715f + 0.285f * amount; | 1255 matrix[6] = 0.715f + 0.285f * amount; |
(...skipping 284 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1540 MOCK_METHOD0(BindFramebuffer, void()); | 1540 MOCK_METHOD0(BindFramebuffer, void()); |
1541 MOCK_METHOD1(SwapBuffers, void(CompositorFrame* frame)); | 1541 MOCK_METHOD1(SwapBuffers, void(CompositorFrame* frame)); |
1542 }; | 1542 }; |
1543 | 1543 |
1544 class MockOutputSurfaceTest : public testing::Test, public FakeRendererClient { | 1544 class MockOutputSurfaceTest : public testing::Test, public FakeRendererClient { |
1545 protected: | 1545 protected: |
1546 virtual void SetUp() { | 1546 virtual void SetUp() { |
1547 FakeOutputSurfaceClient output_surface_client_; | 1547 FakeOutputSurfaceClient output_surface_client_; |
1548 CHECK(output_surface_.BindToClient(&output_surface_client_)); | 1548 CHECK(output_surface_.BindToClient(&output_surface_client_)); |
1549 | 1549 |
1550 resource_provider_ = ResourceProvider::Create(&output_surface_, 0).Pass(); | 1550 resource_provider_ = |
| 1551 ResourceProvider::Create(&output_surface_, 0, false).Pass(); |
1551 | 1552 |
1552 renderer_.reset(new FakeRendererGL( | 1553 renderer_.reset(new FakeRendererGL( |
1553 this, &settings_, &output_surface_, resource_provider_.get())); | 1554 this, &settings_, &output_surface_, resource_provider_.get())); |
1554 EXPECT_TRUE(renderer_->Initialize()); | 1555 EXPECT_TRUE(renderer_->Initialize()); |
1555 } | 1556 } |
1556 | 1557 |
1557 void SwapBuffers() { renderer_->SwapBuffers(); } | 1558 void SwapBuffers() { renderer_->SwapBuffers(); } |
1558 | 1559 |
1559 void DrawFrame(float device_scale_factor) { | 1560 void DrawFrame(float device_scale_factor) { |
1560 gfx::Rect viewport_rect(DeviceViewport()); | 1561 gfx::Rect viewport_rect(DeviceViewport()); |
(...skipping 130 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1691 base::MessageLoop::current()->Run(); | 1692 base::MessageLoop::current()->Run(); |
1692 | 1693 |
1693 // The sync point should have happened. | 1694 // The sync point should have happened. |
1694 EXPECT_EQ(1, sync_point_callback_count); | 1695 EXPECT_EQ(1, sync_point_callback_count); |
1695 EXPECT_EQ(1, other_callback_count); | 1696 EXPECT_EQ(1, other_callback_count); |
1696 } | 1697 } |
1697 #endif // OS_ANDROID | 1698 #endif // OS_ANDROID |
1698 | 1699 |
1699 } // namespace | 1700 } // namespace |
1700 } // namespace cc | 1701 } // namespace cc |
OLD | NEW |