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 201 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
212 protected: | 212 protected: |
213 GLRendererTest() { | 213 GLRendererTest() { |
214 scoped_ptr<FrameCountingContext> context3d(new FrameCountingContext); | 214 scoped_ptr<FrameCountingContext> context3d(new FrameCountingContext); |
215 context3d_ = context3d.get(); | 215 context3d_ = context3d.get(); |
216 | 216 |
217 output_surface_ = FakeOutputSurface::Create3d( | 217 output_surface_ = FakeOutputSurface::Create3d( |
218 context3d.PassAs<TestWebGraphicsContext3D>()).Pass(); | 218 context3d.PassAs<TestWebGraphicsContext3D>()).Pass(); |
219 CHECK(output_surface_->BindToClient(&output_surface_client_)); | 219 CHECK(output_surface_->BindToClient(&output_surface_client_)); |
220 | 220 |
221 resource_provider_ = | 221 resource_provider_ = |
222 ResourceProvider::Create(output_surface_.get(), 0).Pass(); | 222 ResourceProvider::Create(output_surface_.get(), 0, false, true).Pass(); |
223 renderer_ = make_scoped_ptr(new FakeRendererGL(&renderer_client_, | 223 renderer_ = make_scoped_ptr(new FakeRendererGL(&renderer_client_, |
224 &settings_, | 224 &settings_, |
225 output_surface_.get(), | 225 output_surface_.get(), |
226 resource_provider_.get())); | 226 resource_provider_.get())); |
227 } | 227 } |
228 | 228 |
229 virtual void SetUp() { renderer_->Initialize(); } | 229 virtual void SetUp() { renderer_->Initialize(); } |
230 | 230 |
231 void SwapBuffers() { renderer_->SwapBuffers(); } | 231 void SwapBuffers() { renderer_->SwapBuffers(); } |
232 | 232 |
(...skipping 70 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
303 }; | 303 }; |
304 | 304 |
305 class GLRendererShaderTest : public testing::Test { | 305 class GLRendererShaderTest : public testing::Test { |
306 protected: | 306 protected: |
307 GLRendererShaderTest() { | 307 GLRendererShaderTest() { |
308 output_surface_ = FakeOutputSurface::Create3d( | 308 output_surface_ = FakeOutputSurface::Create3d( |
309 scoped_ptr<TestWebGraphicsContext3D>( | 309 scoped_ptr<TestWebGraphicsContext3D>( |
310 new ShaderCreatorMockGraphicsContext())).Pass(); | 310 new ShaderCreatorMockGraphicsContext())).Pass(); |
311 CHECK(output_surface_->BindToClient(&output_surface_client_)); | 311 CHECK(output_surface_->BindToClient(&output_surface_client_)); |
312 | 312 |
313 resource_provider_ = ResourceProvider::Create(output_surface_.get(), | 313 resource_provider_ = ResourceProvider::Create( |
314 0).Pass(); | 314 output_surface_.get(), 0, false, true).Pass(); |
315 renderer_.reset(new FakeRendererGL(&renderer_client_, | 315 renderer_.reset(new FakeRendererGL(&renderer_client_, |
316 &settings_, | 316 &settings_, |
317 output_surface_.get(), | 317 output_surface_.get(), |
318 resource_provider_.get())); | 318 resource_provider_.get())); |
319 renderer_->Initialize(); | 319 renderer_->Initialize(); |
320 } | 320 } |
321 | 321 |
322 void TestRenderPassProgram() { | 322 void TestRenderPassProgram() { |
323 EXPECT_PROGRAM_VALID(renderer_->render_pass_program_); | 323 EXPECT_PROGRAM_VALID(renderer_->render_pass_program_); |
324 EXPECT_EQ(renderer_->render_pass_program_->program(), | 324 EXPECT_EQ(renderer_->render_pass_program_->program(), |
(...skipping 300 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
625 | 625 |
626 // This test isn't using the same fixture as GLRendererTest, and you can't mix | 626 // This test isn't using the same fixture as GLRendererTest, and you can't mix |
627 // TEST() and TEST_F() with the same name, Hence LRC2. | 627 // TEST() and TEST_F() with the same name, Hence LRC2. |
628 TEST(GLRendererTest2, InitializationDoesNotMakeSynchronousCalls) { | 628 TEST(GLRendererTest2, InitializationDoesNotMakeSynchronousCalls) { |
629 FakeOutputSurfaceClient output_surface_client; | 629 FakeOutputSurfaceClient output_surface_client; |
630 scoped_ptr<OutputSurface> output_surface(FakeOutputSurface::Create3d( | 630 scoped_ptr<OutputSurface> output_surface(FakeOutputSurface::Create3d( |
631 scoped_ptr<TestWebGraphicsContext3D>(new ForbidSynchronousCallContext))); | 631 scoped_ptr<TestWebGraphicsContext3D>(new ForbidSynchronousCallContext))); |
632 CHECK(output_surface->BindToClient(&output_surface_client)); | 632 CHECK(output_surface->BindToClient(&output_surface_client)); |
633 | 633 |
634 scoped_ptr<ResourceProvider> resource_provider( | 634 scoped_ptr<ResourceProvider> resource_provider( |
635 ResourceProvider::Create(output_surface.get(), 0)); | 635 ResourceProvider::Create(output_surface.get(), 0, false, true)); |
636 | 636 |
637 LayerTreeSettings settings; | 637 LayerTreeSettings settings; |
638 FakeRendererClient renderer_client; | 638 FakeRendererClient renderer_client; |
639 FakeRendererGL renderer(&renderer_client, | 639 FakeRendererGL renderer(&renderer_client, |
640 &settings, | 640 &settings, |
641 output_surface.get(), | 641 output_surface.get(), |
642 resource_provider.get()); | 642 resource_provider.get()); |
643 | 643 |
644 EXPECT_TRUE(renderer.Initialize()); | 644 EXPECT_TRUE(renderer.Initialize()); |
645 } | 645 } |
(...skipping 24 matching lines...) Expand all Loading... |
670 bool context_lost_; | 670 bool context_lost_; |
671 }; | 671 }; |
672 | 672 |
673 TEST(GLRendererTest2, InitializationWithQuicklyLostContextDoesNotAssert) { | 673 TEST(GLRendererTest2, InitializationWithQuicklyLostContextDoesNotAssert) { |
674 FakeOutputSurfaceClient output_surface_client; | 674 FakeOutputSurfaceClient output_surface_client; |
675 scoped_ptr<OutputSurface> output_surface(FakeOutputSurface::Create3d( | 675 scoped_ptr<OutputSurface> output_surface(FakeOutputSurface::Create3d( |
676 scoped_ptr<TestWebGraphicsContext3D>(new LoseContextOnFirstGetContext))); | 676 scoped_ptr<TestWebGraphicsContext3D>(new LoseContextOnFirstGetContext))); |
677 CHECK(output_surface->BindToClient(&output_surface_client)); | 677 CHECK(output_surface->BindToClient(&output_surface_client)); |
678 | 678 |
679 scoped_ptr<ResourceProvider> resource_provider( | 679 scoped_ptr<ResourceProvider> resource_provider( |
680 ResourceProvider::Create(output_surface.get(), 0)); | 680 ResourceProvider::Create(output_surface.get(), 0, false, true)); |
681 | 681 |
682 LayerTreeSettings settings; | 682 LayerTreeSettings settings; |
683 FakeRendererClient renderer_client; | 683 FakeRendererClient renderer_client; |
684 FakeRendererGL renderer(&renderer_client, | 684 FakeRendererGL renderer(&renderer_client, |
685 &settings, | 685 &settings, |
686 output_surface.get(), | 686 output_surface.get(), |
687 resource_provider.get()); | 687 resource_provider.get()); |
688 | 688 |
689 renderer.Initialize(); | 689 renderer.Initialize(); |
690 } | 690 } |
(...skipping 14 matching lines...) Expand all Loading... |
705 TEST(GLRendererTest2, OpaqueBackground) { | 705 TEST(GLRendererTest2, OpaqueBackground) { |
706 scoped_ptr<ClearCountingContext> context_owned(new ClearCountingContext); | 706 scoped_ptr<ClearCountingContext> context_owned(new ClearCountingContext); |
707 ClearCountingContext* context = context_owned.get(); | 707 ClearCountingContext* context = context_owned.get(); |
708 | 708 |
709 FakeOutputSurfaceClient output_surface_client; | 709 FakeOutputSurfaceClient output_surface_client; |
710 scoped_ptr<OutputSurface> output_surface(FakeOutputSurface::Create3d( | 710 scoped_ptr<OutputSurface> output_surface(FakeOutputSurface::Create3d( |
711 context_owned.PassAs<TestWebGraphicsContext3D>())); | 711 context_owned.PassAs<TestWebGraphicsContext3D>())); |
712 CHECK(output_surface->BindToClient(&output_surface_client)); | 712 CHECK(output_surface->BindToClient(&output_surface_client)); |
713 | 713 |
714 scoped_ptr<ResourceProvider> resource_provider( | 714 scoped_ptr<ResourceProvider> resource_provider( |
715 ResourceProvider::Create(output_surface.get(), 0)); | 715 ResourceProvider::Create(output_surface.get(), 0, false, true)); |
716 | 716 |
717 LayerTreeSettings settings; | 717 LayerTreeSettings settings; |
718 FakeRendererClient renderer_client; | 718 FakeRendererClient renderer_client; |
719 FakeRendererGL renderer(&renderer_client, | 719 FakeRendererGL renderer(&renderer_client, |
720 &settings, | 720 &settings, |
721 output_surface.get(), | 721 output_surface.get(), |
722 resource_provider.get()); | 722 resource_provider.get()); |
723 | 723 |
724 renderer_client.root_render_pass()->has_transparent_background = false; | 724 renderer_client.root_render_pass()->has_transparent_background = false; |
725 | 725 |
(...skipping 16 matching lines...) Expand all Loading... |
742 TEST(GLRendererTest2, TransparentBackground) { | 742 TEST(GLRendererTest2, TransparentBackground) { |
743 scoped_ptr<ClearCountingContext> context_owned(new ClearCountingContext); | 743 scoped_ptr<ClearCountingContext> context_owned(new ClearCountingContext); |
744 ClearCountingContext* context = context_owned.get(); | 744 ClearCountingContext* context = context_owned.get(); |
745 | 745 |
746 FakeOutputSurfaceClient output_surface_client; | 746 FakeOutputSurfaceClient output_surface_client; |
747 scoped_ptr<OutputSurface> output_surface(FakeOutputSurface::Create3d( | 747 scoped_ptr<OutputSurface> output_surface(FakeOutputSurface::Create3d( |
748 context_owned.PassAs<TestWebGraphicsContext3D>())); | 748 context_owned.PassAs<TestWebGraphicsContext3D>())); |
749 CHECK(output_surface->BindToClient(&output_surface_client)); | 749 CHECK(output_surface->BindToClient(&output_surface_client)); |
750 | 750 |
751 scoped_ptr<ResourceProvider> resource_provider( | 751 scoped_ptr<ResourceProvider> resource_provider( |
752 ResourceProvider::Create(output_surface.get(), 0)); | 752 ResourceProvider::Create(output_surface.get(), 0, false, true)); |
753 | 753 |
754 LayerTreeSettings settings; | 754 LayerTreeSettings settings; |
755 FakeRendererClient renderer_client; | 755 FakeRendererClient renderer_client; |
756 FakeRendererGL renderer(&renderer_client, | 756 FakeRendererGL renderer(&renderer_client, |
757 &settings, | 757 &settings, |
758 output_surface.get(), | 758 output_surface.get(), |
759 resource_provider.get()); | 759 resource_provider.get()); |
760 | 760 |
761 renderer_client.root_render_pass()->has_transparent_background = true; | 761 renderer_client.root_render_pass()->has_transparent_background = true; |
762 | 762 |
(...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
820 scoped_ptr<VisibilityChangeIsLastCallTrackingContext> context_owned( | 820 scoped_ptr<VisibilityChangeIsLastCallTrackingContext> context_owned( |
821 new VisibilityChangeIsLastCallTrackingContext); | 821 new VisibilityChangeIsLastCallTrackingContext); |
822 VisibilityChangeIsLastCallTrackingContext* context = context_owned.get(); | 822 VisibilityChangeIsLastCallTrackingContext* context = context_owned.get(); |
823 | 823 |
824 FakeOutputSurfaceClient output_surface_client; | 824 FakeOutputSurfaceClient output_surface_client; |
825 scoped_ptr<OutputSurface> output_surface(FakeOutputSurface::Create3d( | 825 scoped_ptr<OutputSurface> output_surface(FakeOutputSurface::Create3d( |
826 context_owned.PassAs<TestWebGraphicsContext3D>())); | 826 context_owned.PassAs<TestWebGraphicsContext3D>())); |
827 CHECK(output_surface->BindToClient(&output_surface_client)); | 827 CHECK(output_surface->BindToClient(&output_surface_client)); |
828 | 828 |
829 scoped_ptr<ResourceProvider> resource_provider( | 829 scoped_ptr<ResourceProvider> resource_provider( |
830 ResourceProvider::Create(output_surface.get(), 0)); | 830 ResourceProvider::Create(output_surface.get(), 0, false, true)); |
831 | 831 |
832 LayerTreeSettings settings; | 832 LayerTreeSettings settings; |
833 FakeRendererClient renderer_client; | 833 FakeRendererClient renderer_client; |
834 FakeRendererGL renderer(&renderer_client, | 834 FakeRendererGL renderer(&renderer_client, |
835 &settings, | 835 &settings, |
836 output_surface.get(), | 836 output_surface.get(), |
837 resource_provider.get()); | 837 resource_provider.get()); |
838 | 838 |
839 EXPECT_TRUE(renderer.Initialize()); | 839 EXPECT_TRUE(renderer.Initialize()); |
840 | 840 |
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
880 scoped_ptr<TextureStateTrackingContext> context_owned( | 880 scoped_ptr<TextureStateTrackingContext> context_owned( |
881 new TextureStateTrackingContext); | 881 new TextureStateTrackingContext); |
882 TextureStateTrackingContext* context = context_owned.get(); | 882 TextureStateTrackingContext* context = context_owned.get(); |
883 | 883 |
884 FakeOutputSurfaceClient output_surface_client; | 884 FakeOutputSurfaceClient output_surface_client; |
885 scoped_ptr<OutputSurface> output_surface(FakeOutputSurface::Create3d( | 885 scoped_ptr<OutputSurface> output_surface(FakeOutputSurface::Create3d( |
886 context_owned.PassAs<TestWebGraphicsContext3D>())); | 886 context_owned.PassAs<TestWebGraphicsContext3D>())); |
887 CHECK(output_surface->BindToClient(&output_surface_client)); | 887 CHECK(output_surface->BindToClient(&output_surface_client)); |
888 | 888 |
889 scoped_ptr<ResourceProvider> resource_provider( | 889 scoped_ptr<ResourceProvider> resource_provider( |
890 ResourceProvider::Create(output_surface.get(), 0)); | 890 ResourceProvider::Create(output_surface.get(), 0, false, true)); |
891 | 891 |
892 LayerTreeSettings settings; | 892 LayerTreeSettings settings; |
893 FakeRendererClient renderer_client; | 893 FakeRendererClient renderer_client; |
894 FakeRendererGL renderer(&renderer_client, | 894 FakeRendererGL renderer(&renderer_client, |
895 &settings, | 895 &settings, |
896 output_surface.get(), | 896 output_surface.get(), |
897 resource_provider.get()); | 897 resource_provider.get()); |
898 | 898 |
899 // During initialization we are allowed to set any texture parameters. | 899 // During initialization we are allowed to set any texture parameters. |
900 EXPECT_CALL(*context, texParameteri(_, _, _)).Times(AnyNumber()); | 900 EXPECT_CALL(*context, texParameteri(_, _, _)).Times(AnyNumber()); |
(...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
967 scoped_ptr<NoClearRootRenderPassMockContext> mock_context_owned( | 967 scoped_ptr<NoClearRootRenderPassMockContext> mock_context_owned( |
968 new NoClearRootRenderPassMockContext); | 968 new NoClearRootRenderPassMockContext); |
969 NoClearRootRenderPassMockContext* mock_context = mock_context_owned.get(); | 969 NoClearRootRenderPassMockContext* mock_context = mock_context_owned.get(); |
970 | 970 |
971 FakeOutputSurfaceClient output_surface_client; | 971 FakeOutputSurfaceClient output_surface_client; |
972 scoped_ptr<OutputSurface> output_surface(FakeOutputSurface::Create3d( | 972 scoped_ptr<OutputSurface> output_surface(FakeOutputSurface::Create3d( |
973 mock_context_owned.PassAs<TestWebGraphicsContext3D>())); | 973 mock_context_owned.PassAs<TestWebGraphicsContext3D>())); |
974 CHECK(output_surface->BindToClient(&output_surface_client)); | 974 CHECK(output_surface->BindToClient(&output_surface_client)); |
975 | 975 |
976 scoped_ptr<ResourceProvider> resource_provider( | 976 scoped_ptr<ResourceProvider> resource_provider( |
977 ResourceProvider::Create(output_surface.get(), 0)); | 977 ResourceProvider::Create(output_surface.get(), 0, false, true)); |
978 | 978 |
979 LayerTreeSettings settings; | 979 LayerTreeSettings settings; |
980 settings.should_clear_root_render_pass = false; | 980 settings.should_clear_root_render_pass = false; |
981 | 981 |
982 FakeRendererClient renderer_client; | 982 FakeRendererClient renderer_client; |
983 FakeRendererGL renderer(&renderer_client, | 983 FakeRendererGL renderer(&renderer_client, |
984 &settings, | 984 &settings, |
985 output_surface.get(), | 985 output_surface.get(), |
986 resource_provider.get()); | 986 resource_provider.get()); |
987 EXPECT_TRUE(renderer.Initialize()); | 987 EXPECT_TRUE(renderer.Initialize()); |
(...skipping 67 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1055 TEST(GLRendererTest2, ScissorTestWhenClearing) { | 1055 TEST(GLRendererTest2, ScissorTestWhenClearing) { |
1056 scoped_ptr<ScissorTestOnClearCheckingContext> context_owned( | 1056 scoped_ptr<ScissorTestOnClearCheckingContext> context_owned( |
1057 new ScissorTestOnClearCheckingContext); | 1057 new ScissorTestOnClearCheckingContext); |
1058 | 1058 |
1059 FakeOutputSurfaceClient output_surface_client; | 1059 FakeOutputSurfaceClient output_surface_client; |
1060 scoped_ptr<OutputSurface> output_surface(FakeOutputSurface::Create3d( | 1060 scoped_ptr<OutputSurface> output_surface(FakeOutputSurface::Create3d( |
1061 context_owned.PassAs<TestWebGraphicsContext3D>())); | 1061 context_owned.PassAs<TestWebGraphicsContext3D>())); |
1062 CHECK(output_surface->BindToClient(&output_surface_client)); | 1062 CHECK(output_surface->BindToClient(&output_surface_client)); |
1063 | 1063 |
1064 scoped_ptr<ResourceProvider> resource_provider( | 1064 scoped_ptr<ResourceProvider> resource_provider( |
1065 ResourceProvider::Create(output_surface.get(), 0)); | 1065 ResourceProvider::Create(output_surface.get(), 0, false, true)); |
1066 | 1066 |
1067 LayerTreeSettings settings; | 1067 LayerTreeSettings settings; |
1068 FakeRendererClient renderer_client; | 1068 FakeRendererClient renderer_client; |
1069 FakeRendererGL renderer(&renderer_client, | 1069 FakeRendererGL renderer(&renderer_client, |
1070 &settings, | 1070 &settings, |
1071 output_surface.get(), | 1071 output_surface.get(), |
1072 resource_provider.get()); | 1072 resource_provider.get()); |
1073 EXPECT_TRUE(renderer.Initialize()); | 1073 EXPECT_TRUE(renderer.Initialize()); |
1074 EXPECT_FALSE(renderer.Capabilities().using_partial_swap); | 1074 EXPECT_FALSE(renderer.Capabilities().using_partial_swap); |
1075 | 1075 |
(...skipping 82 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1158 // the glViewport can be at a nonzero origin within the surface. | 1158 // the glViewport can be at a nonzero origin within the surface. |
1159 scoped_ptr<FlippedScissorAndViewportContext> context_owned( | 1159 scoped_ptr<FlippedScissorAndViewportContext> context_owned( |
1160 new FlippedScissorAndViewportContext); | 1160 new FlippedScissorAndViewportContext); |
1161 | 1161 |
1162 FakeOutputSurfaceClient output_surface_client; | 1162 FakeOutputSurfaceClient output_surface_client; |
1163 scoped_ptr<OutputSurface> output_surface(new NonReshapableOutputSurface( | 1163 scoped_ptr<OutputSurface> output_surface(new NonReshapableOutputSurface( |
1164 context_owned.PassAs<TestWebGraphicsContext3D>())); | 1164 context_owned.PassAs<TestWebGraphicsContext3D>())); |
1165 CHECK(output_surface->BindToClient(&output_surface_client)); | 1165 CHECK(output_surface->BindToClient(&output_surface_client)); |
1166 | 1166 |
1167 scoped_ptr<ResourceProvider> resource_provider( | 1167 scoped_ptr<ResourceProvider> resource_provider( |
1168 ResourceProvider::Create(output_surface.get(), 0)); | 1168 ResourceProvider::Create(output_surface.get(), 0, false, true)); |
1169 | 1169 |
1170 LayerTreeSettings settings; | 1170 LayerTreeSettings settings; |
1171 OffsetViewportRendererClient renderer_client; | 1171 OffsetViewportRendererClient renderer_client; |
1172 FakeRendererGL renderer(&renderer_client, | 1172 FakeRendererGL renderer(&renderer_client, |
1173 &settings, | 1173 &settings, |
1174 output_surface.get(), | 1174 output_surface.get(), |
1175 resource_provider.get()); | 1175 resource_provider.get()); |
1176 EXPECT_TRUE(renderer.Initialize()); | 1176 EXPECT_TRUE(renderer.Initialize()); |
1177 EXPECT_FALSE(renderer.Capabilities().using_partial_swap); | 1177 EXPECT_FALSE(renderer.Capabilities().using_partial_swap); |
1178 | 1178 |
(...skipping 21 matching lines...) Expand all Loading... |
1200 | 1200 |
1201 gfx::Rect child_rect(50, 50); | 1201 gfx::Rect child_rect(50, 50); |
1202 RenderPass::Id child_pass_id(2, 0); | 1202 RenderPass::Id child_pass_id(2, 0); |
1203 TestRenderPass* child_pass; | 1203 TestRenderPass* child_pass; |
1204 | 1204 |
1205 RenderPass::Id root_pass_id(1, 0); | 1205 RenderPass::Id root_pass_id(1, 0); |
1206 TestRenderPass* root_pass; | 1206 TestRenderPass* root_pass; |
1207 | 1207 |
1208 cc::ResourceProvider::ResourceId mask = | 1208 cc::ResourceProvider::ResourceId mask = |
1209 resource_provider_->CreateResource(gfx::Size(20, 12), | 1209 resource_provider_->CreateResource(gfx::Size(20, 12), |
1210 resource_provider_->best_texture_format(), | |
1211 GL_CLAMP_TO_EDGE, | 1210 GL_CLAMP_TO_EDGE, |
1212 ResourceProvider::TextureUsageAny); | 1211 ResourceProvider::TextureUsageAny, |
| 1212 resource_provider_->best_texture_format()); |
1213 resource_provider_->AllocateForTesting(mask); | 1213 resource_provider_->AllocateForTesting(mask); |
1214 | 1214 |
1215 SkScalar matrix[20]; | 1215 SkScalar matrix[20]; |
1216 float amount = 0.5f; | 1216 float amount = 0.5f; |
1217 matrix[0] = 0.213f + 0.787f * amount; | 1217 matrix[0] = 0.213f + 0.787f * amount; |
1218 matrix[1] = 0.715f - 0.715f * amount; | 1218 matrix[1] = 0.715f - 0.715f * amount; |
1219 matrix[2] = 1.f - (matrix[0] + matrix[1]); | 1219 matrix[2] = 1.f - (matrix[0] + matrix[1]); |
1220 matrix[3] = matrix[4] = 0; | 1220 matrix[3] = matrix[4] = 0; |
1221 matrix[5] = 0.213f - 0.213f * amount; | 1221 matrix[5] = 0.213f - 0.213f * amount; |
1222 matrix[6] = 0.715f + 0.285f * amount; | 1222 matrix[6] = 0.715f + 0.285f * amount; |
(...skipping 284 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1507 MOCK_METHOD0(BindFramebuffer, void()); | 1507 MOCK_METHOD0(BindFramebuffer, void()); |
1508 MOCK_METHOD1(SwapBuffers, void(CompositorFrame* frame)); | 1508 MOCK_METHOD1(SwapBuffers, void(CompositorFrame* frame)); |
1509 }; | 1509 }; |
1510 | 1510 |
1511 class MockOutputSurfaceTest : public testing::Test, public FakeRendererClient { | 1511 class MockOutputSurfaceTest : public testing::Test, public FakeRendererClient { |
1512 protected: | 1512 protected: |
1513 virtual void SetUp() { | 1513 virtual void SetUp() { |
1514 FakeOutputSurfaceClient output_surface_client_; | 1514 FakeOutputSurfaceClient output_surface_client_; |
1515 CHECK(output_surface_.BindToClient(&output_surface_client_)); | 1515 CHECK(output_surface_.BindToClient(&output_surface_client_)); |
1516 | 1516 |
1517 resource_provider_ = ResourceProvider::Create(&output_surface_, 0).Pass(); | 1517 resource_provider_ = |
| 1518 ResourceProvider::Create(&output_surface_, 0, false, true).Pass(); |
1518 | 1519 |
1519 renderer_.reset(new FakeRendererGL( | 1520 renderer_.reset(new FakeRendererGL( |
1520 this, &settings_, &output_surface_, resource_provider_.get())); | 1521 this, &settings_, &output_surface_, resource_provider_.get())); |
1521 EXPECT_TRUE(renderer_->Initialize()); | 1522 EXPECT_TRUE(renderer_->Initialize()); |
1522 } | 1523 } |
1523 | 1524 |
1524 void SwapBuffers() { renderer_->SwapBuffers(); } | 1525 void SwapBuffers() { renderer_->SwapBuffers(); } |
1525 | 1526 |
1526 void DrawFrame(float device_scale_factor) { | 1527 void DrawFrame(float device_scale_factor) { |
1527 gfx::Rect viewport_rect(DeviceViewport()); | 1528 gfx::Rect viewport_rect(DeviceViewport()); |
(...skipping 130 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1658 base::MessageLoop::current()->Run(); | 1659 base::MessageLoop::current()->Run(); |
1659 | 1660 |
1660 // The sync point should have happened. | 1661 // The sync point should have happened. |
1661 EXPECT_EQ(1, sync_point_callback_count); | 1662 EXPECT_EQ(1, sync_point_callback_count); |
1662 EXPECT_EQ(1, other_callback_count); | 1663 EXPECT_EQ(1, other_callback_count); |
1663 } | 1664 } |
1664 #endif // OS_ANDROID | 1665 #endif // OS_ANDROID |
1665 | 1666 |
1666 } // namespace | 1667 } // namespace |
1667 } // namespace cc | 1668 } // namespace cc |
OLD | NEW |