| 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/output/compositor_frame_metadata.h" | 10 #include "cc/output/compositor_frame_metadata.h" |
| (...skipping 135 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 146 }; | 146 }; |
| 147 | 147 |
| 148 class GLRendererWithDefaultHarnessTest : public GLRendererTest { | 148 class GLRendererWithDefaultHarnessTest : public GLRendererTest { |
| 149 protected: | 149 protected: |
| 150 GLRendererWithDefaultHarnessTest() { | 150 GLRendererWithDefaultHarnessTest() { |
| 151 output_surface_ = | 151 output_surface_ = |
| 152 FakeOutputSurface::Create3d(TestWebGraphicsContext3D::Create()).Pass(); | 152 FakeOutputSurface::Create3d(TestWebGraphicsContext3D::Create()).Pass(); |
| 153 CHECK(output_surface_->BindToClient(&output_surface_client_)); | 153 CHECK(output_surface_->BindToClient(&output_surface_client_)); |
| 154 | 154 |
| 155 shared_bitmap_manager_.reset(new TestSharedBitmapManager()); | 155 shared_bitmap_manager_.reset(new TestSharedBitmapManager()); |
| 156 resource_provider_ = | 156 resource_provider_ = ResourceProvider::Create(output_surface_.get(), |
| 157 ResourceProvider::Create( | 157 shared_bitmap_manager_.get(), |
| 158 output_surface_.get(), shared_bitmap_manager_.get(), 0, false, 1, | 158 NULL, |
| 159 false).Pass(); | 159 0, |
| 160 false, |
| 161 1, |
| 162 false).Pass(); |
| 160 renderer_ = make_scoped_ptr(new FakeRendererGL(&renderer_client_, | 163 renderer_ = make_scoped_ptr(new FakeRendererGL(&renderer_client_, |
| 161 &settings_, | 164 &settings_, |
| 162 output_surface_.get(), | 165 output_surface_.get(), |
| 163 resource_provider_.get())); | 166 resource_provider_.get())); |
| 164 } | 167 } |
| 165 | 168 |
| 166 void SwapBuffers() { renderer_->SwapBuffers(CompositorFrameMetadata()); } | 169 void SwapBuffers() { renderer_->SwapBuffers(CompositorFrameMetadata()); } |
| 167 | 170 |
| 168 LayerTreeSettings settings_; | 171 LayerTreeSettings settings_; |
| 169 FakeOutputSurfaceClient output_surface_client_; | 172 FakeOutputSurfaceClient output_surface_client_; |
| 170 scoped_ptr<FakeOutputSurface> output_surface_; | 173 scoped_ptr<FakeOutputSurface> output_surface_; |
| 171 FakeRendererClient renderer_client_; | 174 FakeRendererClient renderer_client_; |
| 172 scoped_ptr<SharedBitmapManager> shared_bitmap_manager_; | 175 scoped_ptr<SharedBitmapManager> shared_bitmap_manager_; |
| 173 scoped_ptr<ResourceProvider> resource_provider_; | 176 scoped_ptr<ResourceProvider> resource_provider_; |
| 174 scoped_ptr<FakeRendererGL> renderer_; | 177 scoped_ptr<FakeRendererGL> renderer_; |
| 175 }; | 178 }; |
| 176 | 179 |
| 177 // Closing the namespace here so that GLRendererShaderTest can take advantage | 180 // Closing the namespace here so that GLRendererShaderTest can take advantage |
| 178 // of the friend relationship with GLRenderer and all of the mock classes | 181 // of the friend relationship with GLRenderer and all of the mock classes |
| 179 // declared above it. | 182 // declared above it. |
| 180 } // namespace | 183 } // namespace |
| 181 | 184 |
| 182 class GLRendererShaderTest : public GLRendererTest { | 185 class GLRendererShaderTest : public GLRendererTest { |
| 183 protected: | 186 protected: |
| 184 GLRendererShaderTest() { | 187 GLRendererShaderTest() { |
| 185 output_surface_ = FakeOutputSurface::Create3d().Pass(); | 188 output_surface_ = FakeOutputSurface::Create3d().Pass(); |
| 186 CHECK(output_surface_->BindToClient(&output_surface_client_)); | 189 CHECK(output_surface_->BindToClient(&output_surface_client_)); |
| 187 | 190 |
| 188 shared_bitmap_manager_.reset(new TestSharedBitmapManager()); | 191 shared_bitmap_manager_.reset(new TestSharedBitmapManager()); |
| 189 resource_provider_ = | 192 resource_provider_ = ResourceProvider::Create(output_surface_.get(), |
| 190 ResourceProvider::Create( | 193 shared_bitmap_manager_.get(), |
| 191 output_surface_.get(), shared_bitmap_manager_.get(), 0, false, 1, | 194 NULL, |
| 192 false).Pass(); | 195 0, |
| 196 false, |
| 197 1, |
| 198 false).Pass(); |
| 193 renderer_.reset(new FakeRendererGL(&renderer_client_, | 199 renderer_.reset(new FakeRendererGL(&renderer_client_, |
| 194 &settings_, | 200 &settings_, |
| 195 output_surface_.get(), | 201 output_surface_.get(), |
| 196 resource_provider_.get())); | 202 resource_provider_.get())); |
| 197 } | 203 } |
| 198 | 204 |
| 199 void TestRenderPassProgram(TexCoordPrecision precision) { | 205 void TestRenderPassProgram(TexCoordPrecision precision) { |
| 200 EXPECT_PROGRAM_VALID(&renderer_->render_pass_program_[precision]); | 206 EXPECT_PROGRAM_VALID(&renderer_->render_pass_program_[precision]); |
| 201 EXPECT_EQ(renderer_->render_pass_program_[precision].program(), | 207 EXPECT_EQ(renderer_->render_pass_program_[precision].program(), |
| 202 renderer_->program_shadow_); | 208 renderer_->program_shadow_); |
| (...skipping 265 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 468 } | 474 } |
| 469 }; | 475 }; |
| 470 TEST_F(GLRendererTest, InitializationDoesNotMakeSynchronousCalls) { | 476 TEST_F(GLRendererTest, InitializationDoesNotMakeSynchronousCalls) { |
| 471 FakeOutputSurfaceClient output_surface_client; | 477 FakeOutputSurfaceClient output_surface_client; |
| 472 scoped_ptr<OutputSurface> output_surface(FakeOutputSurface::Create3d( | 478 scoped_ptr<OutputSurface> output_surface(FakeOutputSurface::Create3d( |
| 473 scoped_ptr<TestWebGraphicsContext3D>(new ForbidSynchronousCallContext))); | 479 scoped_ptr<TestWebGraphicsContext3D>(new ForbidSynchronousCallContext))); |
| 474 CHECK(output_surface->BindToClient(&output_surface_client)); | 480 CHECK(output_surface->BindToClient(&output_surface_client)); |
| 475 | 481 |
| 476 scoped_ptr<SharedBitmapManager> shared_bitmap_manager( | 482 scoped_ptr<SharedBitmapManager> shared_bitmap_manager( |
| 477 new TestSharedBitmapManager()); | 483 new TestSharedBitmapManager()); |
| 478 scoped_ptr<ResourceProvider> resource_provider(ResourceProvider::Create( | 484 scoped_ptr<ResourceProvider> resource_provider( |
| 479 output_surface.get(), shared_bitmap_manager.get(), 0, false, 1, false)); | 485 ResourceProvider::Create(output_surface.get(), |
| 486 shared_bitmap_manager.get(), |
| 487 NULL, |
| 488 0, |
| 489 false, |
| 490 1, |
| 491 false)); |
| 480 | 492 |
| 481 LayerTreeSettings settings; | 493 LayerTreeSettings settings; |
| 482 FakeRendererClient renderer_client; | 494 FakeRendererClient renderer_client; |
| 483 FakeRendererGL renderer(&renderer_client, | 495 FakeRendererGL renderer(&renderer_client, |
| 484 &settings, | 496 &settings, |
| 485 output_surface.get(), | 497 output_surface.get(), |
| 486 resource_provider.get()); | 498 resource_provider.get()); |
| 487 } | 499 } |
| 488 | 500 |
| 489 class LoseContextOnFirstGetContext : public TestWebGraphicsContext3D { | 501 class LoseContextOnFirstGetContext : public TestWebGraphicsContext3D { |
| (...skipping 14 matching lines...) Expand all Loading... |
| 504 }; | 516 }; |
| 505 | 517 |
| 506 TEST_F(GLRendererTest, InitializationWithQuicklyLostContextDoesNotAssert) { | 518 TEST_F(GLRendererTest, InitializationWithQuicklyLostContextDoesNotAssert) { |
| 507 FakeOutputSurfaceClient output_surface_client; | 519 FakeOutputSurfaceClient output_surface_client; |
| 508 scoped_ptr<OutputSurface> output_surface(FakeOutputSurface::Create3d( | 520 scoped_ptr<OutputSurface> output_surface(FakeOutputSurface::Create3d( |
| 509 scoped_ptr<TestWebGraphicsContext3D>(new LoseContextOnFirstGetContext))); | 521 scoped_ptr<TestWebGraphicsContext3D>(new LoseContextOnFirstGetContext))); |
| 510 CHECK(output_surface->BindToClient(&output_surface_client)); | 522 CHECK(output_surface->BindToClient(&output_surface_client)); |
| 511 | 523 |
| 512 scoped_ptr<SharedBitmapManager> shared_bitmap_manager( | 524 scoped_ptr<SharedBitmapManager> shared_bitmap_manager( |
| 513 new TestSharedBitmapManager()); | 525 new TestSharedBitmapManager()); |
| 514 scoped_ptr<ResourceProvider> resource_provider(ResourceProvider::Create( | 526 scoped_ptr<ResourceProvider> resource_provider( |
| 515 output_surface.get(), shared_bitmap_manager.get(), 0, false, 1, false)); | 527 ResourceProvider::Create(output_surface.get(), |
| 528 shared_bitmap_manager.get(), |
| 529 NULL, |
| 530 0, |
| 531 false, |
| 532 1, |
| 533 false)); |
| 516 | 534 |
| 517 LayerTreeSettings settings; | 535 LayerTreeSettings settings; |
| 518 FakeRendererClient renderer_client; | 536 FakeRendererClient renderer_client; |
| 519 FakeRendererGL renderer(&renderer_client, | 537 FakeRendererGL renderer(&renderer_client, |
| 520 &settings, | 538 &settings, |
| 521 output_surface.get(), | 539 output_surface.get(), |
| 522 resource_provider.get()); | 540 resource_provider.get()); |
| 523 } | 541 } |
| 524 | 542 |
| 525 class ClearCountingContext : public TestWebGraphicsContext3D { | 543 class ClearCountingContext : public TestWebGraphicsContext3D { |
| (...skipping 11 matching lines...) Expand all Loading... |
| 537 scoped_ptr<ClearCountingContext> context_owned(new ClearCountingContext); | 555 scoped_ptr<ClearCountingContext> context_owned(new ClearCountingContext); |
| 538 ClearCountingContext* context = context_owned.get(); | 556 ClearCountingContext* context = context_owned.get(); |
| 539 | 557 |
| 540 FakeOutputSurfaceClient output_surface_client; | 558 FakeOutputSurfaceClient output_surface_client; |
| 541 scoped_ptr<OutputSurface> output_surface(FakeOutputSurface::Create3d( | 559 scoped_ptr<OutputSurface> output_surface(FakeOutputSurface::Create3d( |
| 542 context_owned.PassAs<TestWebGraphicsContext3D>())); | 560 context_owned.PassAs<TestWebGraphicsContext3D>())); |
| 543 CHECK(output_surface->BindToClient(&output_surface_client)); | 561 CHECK(output_surface->BindToClient(&output_surface_client)); |
| 544 | 562 |
| 545 scoped_ptr<SharedBitmapManager> shared_bitmap_manager( | 563 scoped_ptr<SharedBitmapManager> shared_bitmap_manager( |
| 546 new TestSharedBitmapManager()); | 564 new TestSharedBitmapManager()); |
| 547 scoped_ptr<ResourceProvider> resource_provider(ResourceProvider::Create( | 565 scoped_ptr<ResourceProvider> resource_provider( |
| 548 output_surface.get(), shared_bitmap_manager.get(), 0, false, 1, false)); | 566 ResourceProvider::Create(output_surface.get(), |
| 567 shared_bitmap_manager.get(), |
| 568 NULL, |
| 569 0, |
| 570 false, |
| 571 1, |
| 572 false)); |
| 549 | 573 |
| 550 LayerTreeSettings settings; | 574 LayerTreeSettings settings; |
| 551 FakeRendererClient renderer_client; | 575 FakeRendererClient renderer_client; |
| 552 FakeRendererGL renderer(&renderer_client, | 576 FakeRendererGL renderer(&renderer_client, |
| 553 &settings, | 577 &settings, |
| 554 output_surface.get(), | 578 output_surface.get(), |
| 555 resource_provider.get()); | 579 resource_provider.get()); |
| 556 | 580 |
| 557 gfx::Rect viewport_rect(1, 1); | 581 gfx::Rect viewport_rect(1, 1); |
| 558 TestRenderPass* root_pass = AddRenderPass(&render_passes_in_draw_order_, | 582 TestRenderPass* root_pass = AddRenderPass(&render_passes_in_draw_order_, |
| (...skipping 24 matching lines...) Expand all Loading... |
| 583 scoped_ptr<ClearCountingContext> context_owned(new ClearCountingContext); | 607 scoped_ptr<ClearCountingContext> context_owned(new ClearCountingContext); |
| 584 ClearCountingContext* context = context_owned.get(); | 608 ClearCountingContext* context = context_owned.get(); |
| 585 | 609 |
| 586 FakeOutputSurfaceClient output_surface_client; | 610 FakeOutputSurfaceClient output_surface_client; |
| 587 scoped_ptr<OutputSurface> output_surface(FakeOutputSurface::Create3d( | 611 scoped_ptr<OutputSurface> output_surface(FakeOutputSurface::Create3d( |
| 588 context_owned.PassAs<TestWebGraphicsContext3D>())); | 612 context_owned.PassAs<TestWebGraphicsContext3D>())); |
| 589 CHECK(output_surface->BindToClient(&output_surface_client)); | 613 CHECK(output_surface->BindToClient(&output_surface_client)); |
| 590 | 614 |
| 591 scoped_ptr<SharedBitmapManager> shared_bitmap_manager( | 615 scoped_ptr<SharedBitmapManager> shared_bitmap_manager( |
| 592 new TestSharedBitmapManager()); | 616 new TestSharedBitmapManager()); |
| 593 scoped_ptr<ResourceProvider> resource_provider(ResourceProvider::Create( | 617 scoped_ptr<ResourceProvider> resource_provider( |
| 594 output_surface.get(), shared_bitmap_manager.get(), 0, false, 1, false)); | 618 ResourceProvider::Create(output_surface.get(), |
| 619 shared_bitmap_manager.get(), |
| 620 NULL, |
| 621 0, |
| 622 false, |
| 623 1, |
| 624 false)); |
| 595 | 625 |
| 596 LayerTreeSettings settings; | 626 LayerTreeSettings settings; |
| 597 FakeRendererClient renderer_client; | 627 FakeRendererClient renderer_client; |
| 598 FakeRendererGL renderer(&renderer_client, | 628 FakeRendererGL renderer(&renderer_client, |
| 599 &settings, | 629 &settings, |
| 600 output_surface.get(), | 630 output_surface.get(), |
| 601 resource_provider.get()); | 631 resource_provider.get()); |
| 602 | 632 |
| 603 gfx::Rect viewport_rect(1, 1); | 633 gfx::Rect viewport_rect(1, 1); |
| 604 TestRenderPass* root_pass = AddRenderPass(&render_passes_in_draw_order_, | 634 TestRenderPass* root_pass = AddRenderPass(&render_passes_in_draw_order_, |
| (...skipping 17 matching lines...) Expand all Loading... |
| 622 scoped_ptr<ClearCountingContext> context_owned(new ClearCountingContext); | 652 scoped_ptr<ClearCountingContext> context_owned(new ClearCountingContext); |
| 623 ClearCountingContext* context = context_owned.get(); | 653 ClearCountingContext* context = context_owned.get(); |
| 624 | 654 |
| 625 FakeOutputSurfaceClient output_surface_client; | 655 FakeOutputSurfaceClient output_surface_client; |
| 626 scoped_ptr<OutputSurface> output_surface(FakeOutputSurface::CreateOffscreen( | 656 scoped_ptr<OutputSurface> output_surface(FakeOutputSurface::CreateOffscreen( |
| 627 context_owned.PassAs<TestWebGraphicsContext3D>())); | 657 context_owned.PassAs<TestWebGraphicsContext3D>())); |
| 628 CHECK(output_surface->BindToClient(&output_surface_client)); | 658 CHECK(output_surface->BindToClient(&output_surface_client)); |
| 629 | 659 |
| 630 scoped_ptr<SharedBitmapManager> shared_bitmap_manager( | 660 scoped_ptr<SharedBitmapManager> shared_bitmap_manager( |
| 631 new TestSharedBitmapManager()); | 661 new TestSharedBitmapManager()); |
| 632 scoped_ptr<ResourceProvider> resource_provider(ResourceProvider::Create( | 662 scoped_ptr<ResourceProvider> resource_provider( |
| 633 output_surface.get(), shared_bitmap_manager.get(), 0, false, 1, false)); | 663 ResourceProvider::Create(output_surface.get(), |
| 664 shared_bitmap_manager.get(), |
| 665 NULL, |
| 666 0, |
| 667 false, |
| 668 1, |
| 669 false)); |
| 634 | 670 |
| 635 LayerTreeSettings settings; | 671 LayerTreeSettings settings; |
| 636 FakeRendererClient renderer_client; | 672 FakeRendererClient renderer_client; |
| 637 FakeRendererGL renderer(&renderer_client, | 673 FakeRendererGL renderer(&renderer_client, |
| 638 &settings, | 674 &settings, |
| 639 output_surface.get(), | 675 output_surface.get(), |
| 640 resource_provider.get()); | 676 resource_provider.get()); |
| 641 | 677 |
| 642 gfx::Rect viewport_rect(1, 1); | 678 gfx::Rect viewport_rect(1, 1); |
| 643 AddRenderPass(&render_passes_in_draw_order_, | 679 AddRenderPass(&render_passes_in_draw_order_, |
| (...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 703 &VisibilityChangeIsLastCallTrackingContext::set_last_call_was_visibility, | 739 &VisibilityChangeIsLastCallTrackingContext::set_last_call_was_visibility, |
| 704 base::Unretained(context))); | 740 base::Unretained(context))); |
| 705 | 741 |
| 706 FakeOutputSurfaceClient output_surface_client; | 742 FakeOutputSurfaceClient output_surface_client; |
| 707 scoped_ptr<OutputSurface> output_surface( | 743 scoped_ptr<OutputSurface> output_surface( |
| 708 FakeOutputSurface::Create3d(provider)); | 744 FakeOutputSurface::Create3d(provider)); |
| 709 CHECK(output_surface->BindToClient(&output_surface_client)); | 745 CHECK(output_surface->BindToClient(&output_surface_client)); |
| 710 | 746 |
| 711 scoped_ptr<SharedBitmapManager> shared_bitmap_manager( | 747 scoped_ptr<SharedBitmapManager> shared_bitmap_manager( |
| 712 new TestSharedBitmapManager()); | 748 new TestSharedBitmapManager()); |
| 713 scoped_ptr<ResourceProvider> resource_provider(ResourceProvider::Create( | 749 scoped_ptr<ResourceProvider> resource_provider( |
| 714 output_surface.get(), shared_bitmap_manager.get(), 0, false, 1, false)); | 750 ResourceProvider::Create(output_surface.get(), |
| 751 shared_bitmap_manager.get(), |
| 752 NULL, |
| 753 0, |
| 754 false, |
| 755 1, |
| 756 false)); |
| 715 | 757 |
| 716 LayerTreeSettings settings; | 758 LayerTreeSettings settings; |
| 717 FakeRendererClient renderer_client; | 759 FakeRendererClient renderer_client; |
| 718 FakeRendererGL renderer(&renderer_client, | 760 FakeRendererGL renderer(&renderer_client, |
| 719 &settings, | 761 &settings, |
| 720 output_surface.get(), | 762 output_surface.get(), |
| 721 resource_provider.get()); | 763 resource_provider.get()); |
| 722 | 764 |
| 723 gfx::Rect viewport_rect(1, 1); | 765 gfx::Rect viewport_rect(1, 1); |
| 724 AddRenderPass(&render_passes_in_draw_order_, | 766 AddRenderPass(&render_passes_in_draw_order_, |
| (...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 768 new TextureStateTrackingContext); | 810 new TextureStateTrackingContext); |
| 769 TextureStateTrackingContext* context = context_owned.get(); | 811 TextureStateTrackingContext* context = context_owned.get(); |
| 770 | 812 |
| 771 FakeOutputSurfaceClient output_surface_client; | 813 FakeOutputSurfaceClient output_surface_client; |
| 772 scoped_ptr<OutputSurface> output_surface(FakeOutputSurface::Create3d( | 814 scoped_ptr<OutputSurface> output_surface(FakeOutputSurface::Create3d( |
| 773 context_owned.PassAs<TestWebGraphicsContext3D>())); | 815 context_owned.PassAs<TestWebGraphicsContext3D>())); |
| 774 CHECK(output_surface->BindToClient(&output_surface_client)); | 816 CHECK(output_surface->BindToClient(&output_surface_client)); |
| 775 | 817 |
| 776 scoped_ptr<SharedBitmapManager> shared_bitmap_manager( | 818 scoped_ptr<SharedBitmapManager> shared_bitmap_manager( |
| 777 new TestSharedBitmapManager()); | 819 new TestSharedBitmapManager()); |
| 778 scoped_ptr<ResourceProvider> resource_provider(ResourceProvider::Create( | 820 scoped_ptr<ResourceProvider> resource_provider( |
| 779 output_surface.get(), shared_bitmap_manager.get(), 0, false, 1, false)); | 821 ResourceProvider::Create(output_surface.get(), |
| 822 shared_bitmap_manager.get(), |
| 823 NULL, |
| 824 0, |
| 825 false, |
| 826 1, |
| 827 false)); |
| 780 | 828 |
| 781 LayerTreeSettings settings; | 829 LayerTreeSettings settings; |
| 782 FakeRendererClient renderer_client; | 830 FakeRendererClient renderer_client; |
| 783 FakeRendererGL renderer(&renderer_client, | 831 FakeRendererGL renderer(&renderer_client, |
| 784 &settings, | 832 &settings, |
| 785 output_surface.get(), | 833 output_surface.get(), |
| 786 resource_provider.get()); | 834 resource_provider.get()); |
| 787 | 835 |
| 788 // During initialization we are allowed to set any texture parameters. | 836 // During initialization we are allowed to set any texture parameters. |
| 789 EXPECT_CALL(*context, texParameteri(_, _, _)).Times(AnyNumber()); | 837 EXPECT_CALL(*context, texParameteri(_, _, _)).Times(AnyNumber()); |
| (...skipping 63 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 853 new NoClearRootRenderPassMockContext); | 901 new NoClearRootRenderPassMockContext); |
| 854 NoClearRootRenderPassMockContext* mock_context = mock_context_owned.get(); | 902 NoClearRootRenderPassMockContext* mock_context = mock_context_owned.get(); |
| 855 | 903 |
| 856 FakeOutputSurfaceClient output_surface_client; | 904 FakeOutputSurfaceClient output_surface_client; |
| 857 scoped_ptr<OutputSurface> output_surface(FakeOutputSurface::Create3d( | 905 scoped_ptr<OutputSurface> output_surface(FakeOutputSurface::Create3d( |
| 858 mock_context_owned.PassAs<TestWebGraphicsContext3D>())); | 906 mock_context_owned.PassAs<TestWebGraphicsContext3D>())); |
| 859 CHECK(output_surface->BindToClient(&output_surface_client)); | 907 CHECK(output_surface->BindToClient(&output_surface_client)); |
| 860 | 908 |
| 861 scoped_ptr<SharedBitmapManager> shared_bitmap_manager( | 909 scoped_ptr<SharedBitmapManager> shared_bitmap_manager( |
| 862 new TestSharedBitmapManager()); | 910 new TestSharedBitmapManager()); |
| 863 scoped_ptr<ResourceProvider> resource_provider(ResourceProvider::Create( | 911 scoped_ptr<ResourceProvider> resource_provider( |
| 864 output_surface.get(), shared_bitmap_manager.get(), 0, false, 1, false)); | 912 ResourceProvider::Create(output_surface.get(), |
| 913 shared_bitmap_manager.get(), |
| 914 NULL, |
| 915 0, |
| 916 false, |
| 917 1, |
| 918 false)); |
| 865 | 919 |
| 866 LayerTreeSettings settings; | 920 LayerTreeSettings settings; |
| 867 settings.should_clear_root_render_pass = false; | 921 settings.should_clear_root_render_pass = false; |
| 868 | 922 |
| 869 FakeRendererClient renderer_client; | 923 FakeRendererClient renderer_client; |
| 870 FakeRendererGL renderer(&renderer_client, | 924 FakeRendererGL renderer(&renderer_client, |
| 871 &settings, | 925 &settings, |
| 872 output_surface.get(), | 926 output_surface.get(), |
| 873 resource_provider.get()); | 927 resource_provider.get()); |
| 874 | 928 |
| (...skipping 70 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 945 scoped_ptr<ScissorTestOnClearCheckingContext> context_owned( | 999 scoped_ptr<ScissorTestOnClearCheckingContext> context_owned( |
| 946 new ScissorTestOnClearCheckingContext); | 1000 new ScissorTestOnClearCheckingContext); |
| 947 | 1001 |
| 948 FakeOutputSurfaceClient output_surface_client; | 1002 FakeOutputSurfaceClient output_surface_client; |
| 949 scoped_ptr<OutputSurface> output_surface(FakeOutputSurface::Create3d( | 1003 scoped_ptr<OutputSurface> output_surface(FakeOutputSurface::Create3d( |
| 950 context_owned.PassAs<TestWebGraphicsContext3D>())); | 1004 context_owned.PassAs<TestWebGraphicsContext3D>())); |
| 951 CHECK(output_surface->BindToClient(&output_surface_client)); | 1005 CHECK(output_surface->BindToClient(&output_surface_client)); |
| 952 | 1006 |
| 953 scoped_ptr<SharedBitmapManager> shared_bitmap_manager( | 1007 scoped_ptr<SharedBitmapManager> shared_bitmap_manager( |
| 954 new TestSharedBitmapManager()); | 1008 new TestSharedBitmapManager()); |
| 955 scoped_ptr<ResourceProvider> resource_provider(ResourceProvider::Create( | 1009 scoped_ptr<ResourceProvider> resource_provider( |
| 956 output_surface.get(), shared_bitmap_manager.get(), 0, false, 1, false)); | 1010 ResourceProvider::Create(output_surface.get(), |
| 1011 shared_bitmap_manager.get(), |
| 1012 NULL, |
| 1013 0, |
| 1014 false, |
| 1015 1, |
| 1016 false)); |
| 957 | 1017 |
| 958 LayerTreeSettings settings; | 1018 LayerTreeSettings settings; |
| 959 FakeRendererClient renderer_client; | 1019 FakeRendererClient renderer_client; |
| 960 FakeRendererGL renderer(&renderer_client, | 1020 FakeRendererGL renderer(&renderer_client, |
| 961 &settings, | 1021 &settings, |
| 962 output_surface.get(), | 1022 output_surface.get(), |
| 963 resource_provider.get()); | 1023 resource_provider.get()); |
| 964 EXPECT_FALSE(renderer.Capabilities().using_partial_swap); | 1024 EXPECT_FALSE(renderer.Capabilities().using_partial_swap); |
| 965 | 1025 |
| 966 gfx::Rect viewport_rect(1, 1); | 1026 gfx::Rect viewport_rect(1, 1); |
| (...skipping 71 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1038 | 1098 |
| 1039 FakeOutputSurfaceClient output_surface_client; | 1099 FakeOutputSurfaceClient output_surface_client; |
| 1040 scoped_ptr<NonReshapableOutputSurface> output_surface( | 1100 scoped_ptr<NonReshapableOutputSurface> output_surface( |
| 1041 new NonReshapableOutputSurface( | 1101 new NonReshapableOutputSurface( |
| 1042 context_owned.PassAs<TestWebGraphicsContext3D>())); | 1102 context_owned.PassAs<TestWebGraphicsContext3D>())); |
| 1043 CHECK(output_surface->BindToClient(&output_surface_client)); | 1103 CHECK(output_surface->BindToClient(&output_surface_client)); |
| 1044 output_surface->set_fixed_size(gfx::Size(100, 100)); | 1104 output_surface->set_fixed_size(gfx::Size(100, 100)); |
| 1045 | 1105 |
| 1046 scoped_ptr<SharedBitmapManager> shared_bitmap_manager( | 1106 scoped_ptr<SharedBitmapManager> shared_bitmap_manager( |
| 1047 new TestSharedBitmapManager()); | 1107 new TestSharedBitmapManager()); |
| 1048 scoped_ptr<ResourceProvider> resource_provider(ResourceProvider::Create( | 1108 scoped_ptr<ResourceProvider> resource_provider( |
| 1049 output_surface.get(), shared_bitmap_manager.get(), 0, false, 1, false)); | 1109 ResourceProvider::Create(output_surface.get(), |
| 1110 shared_bitmap_manager.get(), |
| 1111 NULL, |
| 1112 0, |
| 1113 false, |
| 1114 1, |
| 1115 false)); |
| 1050 | 1116 |
| 1051 LayerTreeSettings settings; | 1117 LayerTreeSettings settings; |
| 1052 settings.partial_swap_enabled = true; | 1118 settings.partial_swap_enabled = true; |
| 1053 FakeRendererClient renderer_client; | 1119 FakeRendererClient renderer_client; |
| 1054 FakeRendererGL renderer(&renderer_client, | 1120 FakeRendererGL renderer(&renderer_client, |
| 1055 &settings, | 1121 &settings, |
| 1056 output_surface.get(), | 1122 output_surface.get(), |
| 1057 resource_provider.get()); | 1123 resource_provider.get()); |
| 1058 EXPECT_TRUE(renderer.Capabilities().using_partial_swap); | 1124 EXPECT_TRUE(renderer.Capabilities().using_partial_swap); |
| 1059 | 1125 |
| (...skipping 163 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1223 scoped_ptr<FlippedScissorAndViewportContext> context_owned( | 1289 scoped_ptr<FlippedScissorAndViewportContext> context_owned( |
| 1224 new FlippedScissorAndViewportContext); | 1290 new FlippedScissorAndViewportContext); |
| 1225 | 1291 |
| 1226 FakeOutputSurfaceClient output_surface_client; | 1292 FakeOutputSurfaceClient output_surface_client; |
| 1227 scoped_ptr<OutputSurface> output_surface(new NonReshapableOutputSurface( | 1293 scoped_ptr<OutputSurface> output_surface(new NonReshapableOutputSurface( |
| 1228 context_owned.PassAs<TestWebGraphicsContext3D>())); | 1294 context_owned.PassAs<TestWebGraphicsContext3D>())); |
| 1229 CHECK(output_surface->BindToClient(&output_surface_client)); | 1295 CHECK(output_surface->BindToClient(&output_surface_client)); |
| 1230 | 1296 |
| 1231 scoped_ptr<SharedBitmapManager> shared_bitmap_manager( | 1297 scoped_ptr<SharedBitmapManager> shared_bitmap_manager( |
| 1232 new TestSharedBitmapManager()); | 1298 new TestSharedBitmapManager()); |
| 1233 scoped_ptr<ResourceProvider> resource_provider(ResourceProvider::Create( | 1299 scoped_ptr<ResourceProvider> resource_provider( |
| 1234 output_surface.get(), shared_bitmap_manager.get(), 0, false, 1, false)); | 1300 ResourceProvider::Create(output_surface.get(), |
| 1301 shared_bitmap_manager.get(), |
| 1302 NULL, |
| 1303 0, |
| 1304 false, |
| 1305 1, |
| 1306 false)); |
| 1235 | 1307 |
| 1236 LayerTreeSettings settings; | 1308 LayerTreeSettings settings; |
| 1237 FakeRendererClient renderer_client; | 1309 FakeRendererClient renderer_client; |
| 1238 FakeRendererGL renderer(&renderer_client, | 1310 FakeRendererGL renderer(&renderer_client, |
| 1239 &settings, | 1311 &settings, |
| 1240 output_surface.get(), | 1312 output_surface.get(), |
| 1241 resource_provider.get()); | 1313 resource_provider.get()); |
| 1242 EXPECT_FALSE(renderer.Capabilities().using_partial_swap); | 1314 EXPECT_FALSE(renderer.Capabilities().using_partial_swap); |
| 1243 | 1315 |
| 1244 gfx::Rect device_viewport_rect(10, 10, 100, 100); | 1316 gfx::Rect device_viewport_rect(10, 10, 100, 100); |
| (...skipping 352 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1597 MOCK_METHOD1(SwapBuffers, void(CompositorFrame* frame)); | 1669 MOCK_METHOD1(SwapBuffers, void(CompositorFrame* frame)); |
| 1598 }; | 1670 }; |
| 1599 | 1671 |
| 1600 class MockOutputSurfaceTest : public GLRendererTest { | 1672 class MockOutputSurfaceTest : public GLRendererTest { |
| 1601 protected: | 1673 protected: |
| 1602 virtual void SetUp() { | 1674 virtual void SetUp() { |
| 1603 FakeOutputSurfaceClient output_surface_client_; | 1675 FakeOutputSurfaceClient output_surface_client_; |
| 1604 CHECK(output_surface_.BindToClient(&output_surface_client_)); | 1676 CHECK(output_surface_.BindToClient(&output_surface_client_)); |
| 1605 | 1677 |
| 1606 shared_bitmap_manager_.reset(new TestSharedBitmapManager()); | 1678 shared_bitmap_manager_.reset(new TestSharedBitmapManager()); |
| 1607 resource_provider_ = | 1679 resource_provider_ = ResourceProvider::Create(&output_surface_, |
| 1608 ResourceProvider::Create( | 1680 shared_bitmap_manager_.get(), |
| 1609 &output_surface_, shared_bitmap_manager_.get(), 0, false, 1, false) | 1681 NULL, |
| 1610 .Pass(); | 1682 0, |
| 1683 false, |
| 1684 1, |
| 1685 false).Pass(); |
| 1611 | 1686 |
| 1612 renderer_.reset(new FakeRendererGL(&renderer_client_, | 1687 renderer_.reset(new FakeRendererGL(&renderer_client_, |
| 1613 &settings_, | 1688 &settings_, |
| 1614 &output_surface_, | 1689 &output_surface_, |
| 1615 resource_provider_.get())); | 1690 resource_provider_.get())); |
| 1616 } | 1691 } |
| 1617 | 1692 |
| 1618 void SwapBuffers() { renderer_->SwapBuffers(CompositorFrameMetadata()); } | 1693 void SwapBuffers() { renderer_->SwapBuffers(CompositorFrameMetadata()); } |
| 1619 | 1694 |
| 1620 void DrawFrame(float device_scale_factor, | 1695 void DrawFrame(float device_scale_factor, |
| (...skipping 141 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1762 base::MessageLoop::current()->Run(); | 1837 base::MessageLoop::current()->Run(); |
| 1763 | 1838 |
| 1764 // The sync point should have happened. | 1839 // The sync point should have happened. |
| 1765 EXPECT_EQ(1, sync_point_callback_count); | 1840 EXPECT_EQ(1, sync_point_callback_count); |
| 1766 EXPECT_EQ(1, other_callback_count); | 1841 EXPECT_EQ(1, other_callback_count); |
| 1767 } | 1842 } |
| 1768 #endif // OS_ANDROID | 1843 #endif // OS_ANDROID |
| 1769 | 1844 |
| 1770 } // namespace | 1845 } // namespace |
| 1771 } // namespace cc | 1846 } // namespace cc |
| OLD | NEW |