| 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 |