| 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 <stdint.h> | 7 #include <stdint.h> |
| 8 | 8 |
| 9 #include <set> | 9 #include <set> |
| 10 | 10 |
| 11 #include "base/location.h" | 11 #include "base/location.h" |
| 12 #include "base/memory/ptr_util.h" | 12 #include "base/memory/ptr_util.h" |
| 13 #include "base/threading/thread_task_runner_handle.h" | 13 #include "base/threading/thread_task_runner_handle.h" |
| 14 #include "cc/base/math_util.h" | 14 #include "cc/base/math_util.h" |
| 15 #include "cc/output/compositor_frame_metadata.h" | 15 #include "cc/output/compositor_frame_metadata.h" |
| 16 #include "cc/output/copy_output_request.h" | 16 #include "cc/output/copy_output_request.h" |
| 17 #include "cc/output/copy_output_result.h" | 17 #include "cc/output/copy_output_result.h" |
| 18 #include "cc/output/overlay_strategy_single_on_top.h" | 18 #include "cc/output/overlay_strategy_single_on_top.h" |
| 19 #include "cc/output/overlay_strategy_underlay.h" | 19 #include "cc/output/overlay_strategy_underlay.h" |
| 20 #include "cc/output/texture_mailbox_deleter.h" | 20 #include "cc/output/texture_mailbox_deleter.h" |
| 21 #include "cc/quads/texture_draw_quad.h" | 21 #include "cc/quads/texture_draw_quad.h" |
| 22 #include "cc/resources/resource_provider.h" | 22 #include "cc/resources/resource_provider.h" |
| 23 #include "cc/test/fake_direct_renderer_client.h" |
| 23 #include "cc/test/fake_impl_task_runner_provider.h" | 24 #include "cc/test/fake_impl_task_runner_provider.h" |
| 24 #include "cc/test/fake_layer_tree_host_impl.h" | 25 #include "cc/test/fake_layer_tree_host_impl.h" |
| 25 #include "cc/test/fake_output_surface.h" | 26 #include "cc/test/fake_output_surface.h" |
| 26 #include "cc/test/fake_output_surface_client.h" | 27 #include "cc/test/fake_output_surface_client.h" |
| 27 #include "cc/test/fake_renderer_client.h" | |
| 28 #include "cc/test/fake_resource_provider.h" | 28 #include "cc/test/fake_resource_provider.h" |
| 29 #include "cc/test/pixel_test.h" | 29 #include "cc/test/pixel_test.h" |
| 30 #include "cc/test/render_pass_test_utils.h" | 30 #include "cc/test/render_pass_test_utils.h" |
| 31 #include "cc/test/test_gles2_interface.h" | 31 #include "cc/test/test_gles2_interface.h" |
| 32 #include "cc/test/test_shared_bitmap_manager.h" | 32 #include "cc/test/test_shared_bitmap_manager.h" |
| 33 #include "cc/test/test_web_graphics_context_3d.h" | 33 #include "cc/test/test_web_graphics_context_3d.h" |
| 34 #include "gpu/GLES2/gl2extchromium.h" | 34 #include "gpu/GLES2/gl2extchromium.h" |
| 35 #include "gpu/command_buffer/client/context_support.h" | 35 #include "gpu/command_buffer/client/context_support.h" |
| 36 #include "testing/gmock/include/gmock/gmock.h" | 36 #include "testing/gmock/include/gmock/gmock.h" |
| 37 #include "testing/gtest/include/gtest/gtest.h" | 37 #include "testing/gtest/include/gtest/gtest.h" |
| (...skipping 20 matching lines...) Expand all Loading... |
| 58 gpu::SyncToken other; | 58 gpu::SyncToken other; |
| 59 memcpy(&other, arg, sizeof(other)); | 59 memcpy(&other, arg, sizeof(other)); |
| 60 return other == sync_token; | 60 return other == sync_token; |
| 61 } | 61 } |
| 62 | 62 |
| 63 class GLRendererTest : public testing::Test { | 63 class GLRendererTest : public testing::Test { |
| 64 protected: | 64 protected: |
| 65 RenderPass* root_render_pass() { | 65 RenderPass* root_render_pass() { |
| 66 return render_passes_in_draw_order_.back().get(); | 66 return render_passes_in_draw_order_.back().get(); |
| 67 } | 67 } |
| 68 void DrawFrame(Renderer* renderer, const gfx::Rect& viewport_rect) { | 68 void DrawFrame(GLRenderer* renderer, const gfx::Rect& viewport_rect) { |
| 69 renderer->DrawFrame(&render_passes_in_draw_order_, 1.f, gfx::ColorSpace(), | 69 renderer->DrawFrame(&render_passes_in_draw_order_, 1.f, gfx::ColorSpace(), |
| 70 viewport_rect, viewport_rect); | 70 viewport_rect, viewport_rect); |
| 71 } | 71 } |
| 72 void DrawFrame(Renderer* renderer, | 72 void DrawFrame(GLRenderer* renderer, |
| 73 const gfx::Rect& viewport_rect, | 73 const gfx::Rect& viewport_rect, |
| 74 const gfx::Rect& clip_rect) { | 74 const gfx::Rect& clip_rect) { |
| 75 renderer->DrawFrame(&render_passes_in_draw_order_, 1.f, gfx::ColorSpace(), | 75 renderer->DrawFrame(&render_passes_in_draw_order_, 1.f, gfx::ColorSpace(), |
| 76 viewport_rect, clip_rect); | 76 viewport_rect, clip_rect); |
| 77 } | 77 } |
| 78 | 78 |
| 79 RenderPassList render_passes_in_draw_order_; | 79 RenderPassList render_passes_in_draw_order_; |
| 80 }; | 80 }; |
| 81 | 81 |
| 82 #define EXPECT_PROGRAM_VALID(program_binding) \ | 82 #define EXPECT_PROGRAM_VALID(program_binding) \ |
| (...skipping 223 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 306 MaskShaderPixelTest, | 306 MaskShaderPixelTest, |
| 307 ::testing::Combine(::testing::ValuesIn(kPrecisionList), | 307 ::testing::Combine(::testing::ValuesIn(kPrecisionList), |
| 308 ::testing::ValuesIn(kSamplerList), | 308 ::testing::ValuesIn(kSamplerList), |
| 309 ::testing::ValuesIn(kBlendModeList), | 309 ::testing::ValuesIn(kBlendModeList), |
| 310 ::testing::Bool())); | 310 ::testing::Bool())); |
| 311 | 311 |
| 312 #endif | 312 #endif |
| 313 | 313 |
| 314 class FakeRendererGL : public GLRenderer { | 314 class FakeRendererGL : public GLRenderer { |
| 315 public: | 315 public: |
| 316 FakeRendererGL(RendererClient* client, | 316 FakeRendererGL(DirectRendererClient* client, |
| 317 const RendererSettings* settings, | 317 const RendererSettings* settings, |
| 318 OutputSurface* output_surface, | 318 OutputSurface* output_surface, |
| 319 ResourceProvider* resource_provider) | 319 ResourceProvider* resource_provider) |
| 320 : GLRenderer(client, | 320 : GLRenderer(client, |
| 321 settings, | 321 settings, |
| 322 output_surface, | 322 output_surface, |
| 323 resource_provider, | 323 resource_provider, |
| 324 NULL, | 324 NULL, |
| 325 0) {} | 325 0) {} |
| 326 | 326 |
| 327 FakeRendererGL(RendererClient* client, | 327 FakeRendererGL(DirectRendererClient* client, |
| 328 const RendererSettings* settings, | 328 const RendererSettings* settings, |
| 329 OutputSurface* output_surface, | 329 OutputSurface* output_surface, |
| 330 ResourceProvider* resource_provider, | 330 ResourceProvider* resource_provider, |
| 331 TextureMailboxDeleter* texture_mailbox_deleter) | 331 TextureMailboxDeleter* texture_mailbox_deleter) |
| 332 : GLRenderer(client, | 332 : GLRenderer(client, |
| 333 settings, | 333 settings, |
| 334 output_surface, | 334 output_surface, |
| 335 resource_provider, | 335 resource_provider, |
| 336 texture_mailbox_deleter, | 336 texture_mailbox_deleter, |
| 337 0) {} | 337 0) {} |
| 338 | 338 |
| 339 void SetOverlayProcessor(OverlayProcessor* processor) { | 339 void SetOverlayProcessor(OverlayProcessor* processor) { |
| 340 overlay_processor_.reset(processor); | 340 overlay_processor_.reset(processor); |
| 341 } | 341 } |
| 342 | 342 |
| 343 // GLRenderer methods. | 343 // GLRenderer methods. |
| 344 | 344 |
| 345 // Changing visibility to public. | 345 // Changing visibility to public. |
| 346 using GLRenderer::IsBackbufferDiscarded; | |
| 347 using GLRenderer::DoDrawQuad; | 346 using GLRenderer::DoDrawQuad; |
| 348 using GLRenderer::BeginDrawingFrame; | 347 using GLRenderer::BeginDrawingFrame; |
| 349 using GLRenderer::FinishDrawingQuadList; | 348 using GLRenderer::FinishDrawingQuadList; |
| 350 using GLRenderer::stencil_enabled; | 349 using GLRenderer::stencil_enabled; |
| 351 }; | 350 }; |
| 352 | 351 |
| 353 class GLRendererWithDefaultHarnessTest : public GLRendererTest { | 352 class GLRendererWithDefaultHarnessTest : public GLRendererTest { |
| 354 protected: | 353 protected: |
| 355 GLRendererWithDefaultHarnessTest() { | 354 GLRendererWithDefaultHarnessTest() { |
| 356 output_surface_ = | 355 output_surface_ = |
| 357 FakeOutputSurface::Create3d(TestWebGraphicsContext3D::Create()); | 356 FakeOutputSurface::Create3d(TestWebGraphicsContext3D::Create()); |
| 358 CHECK(output_surface_->BindToClient(&output_surface_client_)); | 357 CHECK(output_surface_->BindToClient(&output_surface_client_)); |
| 359 | 358 |
| 360 shared_bitmap_manager_.reset(new TestSharedBitmapManager()); | 359 shared_bitmap_manager_.reset(new TestSharedBitmapManager()); |
| 361 resource_provider_ = FakeResourceProvider::Create( | 360 resource_provider_ = FakeResourceProvider::Create( |
| 362 output_surface_.get(), shared_bitmap_manager_.get()); | 361 output_surface_.get(), shared_bitmap_manager_.get()); |
| 363 renderer_ = base::WrapUnique( | 362 renderer_ = base::WrapUnique( |
| 364 new FakeRendererGL(&renderer_client_, &settings_, output_surface_.get(), | 363 new FakeRendererGL(&renderer_client_, &settings_, output_surface_.get(), |
| 365 resource_provider_.get())); | 364 resource_provider_.get())); |
| 366 } | 365 } |
| 367 | 366 |
| 368 void SwapBuffers() { renderer_->SwapBuffers(CompositorFrameMetadata()); } | 367 void SwapBuffers() { renderer_->SwapBuffers(CompositorFrameMetadata()); } |
| 369 | 368 |
| 370 RendererSettings settings_; | 369 RendererSettings settings_; |
| 371 FakeOutputSurfaceClient output_surface_client_; | 370 FakeOutputSurfaceClient output_surface_client_; |
| 372 std::unique_ptr<FakeOutputSurface> output_surface_; | 371 std::unique_ptr<FakeOutputSurface> output_surface_; |
| 373 FakeRendererClient renderer_client_; | 372 FakeDirectRendererClient renderer_client_; |
| 374 std::unique_ptr<SharedBitmapManager> shared_bitmap_manager_; | 373 std::unique_ptr<SharedBitmapManager> shared_bitmap_manager_; |
| 375 std::unique_ptr<ResourceProvider> resource_provider_; | 374 std::unique_ptr<ResourceProvider> resource_provider_; |
| 376 std::unique_ptr<FakeRendererGL> renderer_; | 375 std::unique_ptr<FakeRendererGL> renderer_; |
| 377 }; | 376 }; |
| 378 | 377 |
| 379 // Closing the namespace here so that GLRendererShaderTest can take advantage | 378 // Closing the namespace here so that GLRendererShaderTest can take advantage |
| 380 // of the friend relationship with GLRenderer and all of the mock classes | 379 // of the friend relationship with GLRenderer and all of the mock classes |
| 381 // declared above it. | 380 // declared above it. |
| 382 } // namespace | 381 } // namespace |
| 383 | 382 |
| (...skipping 101 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 485 | 484 |
| 486 void TestSolidColorProgramAA() { | 485 void TestSolidColorProgramAA() { |
| 487 EXPECT_PROGRAM_VALID(&renderer_->solid_color_program_aa_); | 486 EXPECT_PROGRAM_VALID(&renderer_->solid_color_program_aa_); |
| 488 EXPECT_EQ(renderer_->solid_color_program_aa_.program(), | 487 EXPECT_EQ(renderer_->solid_color_program_aa_.program(), |
| 489 renderer_->program_shadow_); | 488 renderer_->program_shadow_); |
| 490 } | 489 } |
| 491 | 490 |
| 492 RendererSettings settings_; | 491 RendererSettings settings_; |
| 493 FakeOutputSurfaceClient output_surface_client_; | 492 FakeOutputSurfaceClient output_surface_client_; |
| 494 std::unique_ptr<FakeOutputSurface> output_surface_; | 493 std::unique_ptr<FakeOutputSurface> output_surface_; |
| 495 FakeRendererClient renderer_client_; | 494 FakeDirectRendererClient renderer_client_; |
| 496 std::unique_ptr<SharedBitmapManager> shared_bitmap_manager_; | 495 std::unique_ptr<SharedBitmapManager> shared_bitmap_manager_; |
| 497 std::unique_ptr<ResourceProvider> resource_provider_; | 496 std::unique_ptr<ResourceProvider> resource_provider_; |
| 498 std::unique_ptr<FakeRendererGL> renderer_; | 497 std::unique_ptr<FakeRendererGL> renderer_; |
| 499 }; | 498 }; |
| 500 | 499 |
| 501 namespace { | 500 namespace { |
| 502 | 501 |
| 503 // Test GLRenderer DiscardBackbuffer functionality: | |
| 504 // Suggest discarding framebuffer when one exists and the renderer is not | |
| 505 // visible. | |
| 506 // Expected: it is discarded and damage tracker is reset. | |
| 507 TEST_F( | |
| 508 GLRendererWithDefaultHarnessTest, | |
| 509 SuggestBackbufferNoShouldDiscardBackbufferAndDamageRootLayerIfNotVisible) { | |
| 510 renderer_->SetVisible(false); | |
| 511 EXPECT_EQ(1, renderer_client_.set_full_root_layer_damage_count()); | |
| 512 EXPECT_TRUE(renderer_->IsBackbufferDiscarded()); | |
| 513 } | |
| 514 | |
| 515 // Test GLRenderer DiscardBackbuffer functionality: | |
| 516 // Suggest discarding framebuffer when one exists and the renderer is visible. | |
| 517 // Expected: the allocation is ignored. | |
| 518 TEST_F(GLRendererWithDefaultHarnessTest, | |
| 519 SuggestBackbufferNoDoNothingWhenVisible) { | |
| 520 renderer_->SetVisible(true); | |
| 521 EXPECT_EQ(0, renderer_client_.set_full_root_layer_damage_count()); | |
| 522 EXPECT_FALSE(renderer_->IsBackbufferDiscarded()); | |
| 523 } | |
| 524 | |
| 525 // Test GLRenderer DiscardBackbuffer functionality: | |
| 526 // Suggest discarding framebuffer when one does not exist. | |
| 527 // Expected: it does nothing. | |
| 528 TEST_F(GLRendererWithDefaultHarnessTest, | |
| 529 SuggestBackbufferNoWhenItDoesntExistShouldDoNothing) { | |
| 530 renderer_->SetVisible(false); | |
| 531 EXPECT_EQ(1, renderer_client_.set_full_root_layer_damage_count()); | |
| 532 EXPECT_TRUE(renderer_->IsBackbufferDiscarded()); | |
| 533 | |
| 534 EXPECT_EQ(1, renderer_client_.set_full_root_layer_damage_count()); | |
| 535 EXPECT_TRUE(renderer_->IsBackbufferDiscarded()); | |
| 536 } | |
| 537 | |
| 538 // Test GLRenderer DiscardBackbuffer functionality: | |
| 539 // Begin drawing a frame while a framebuffer is discarded. | |
| 540 // Expected: will recreate framebuffer. | |
| 541 TEST_F(GLRendererWithDefaultHarnessTest, | |
| 542 DiscardedBackbufferIsRecreatedForScopeDuration) { | |
| 543 gfx::Rect viewport_rect(1, 1); | |
| 544 renderer_->SetVisible(false); | |
| 545 EXPECT_TRUE(renderer_->IsBackbufferDiscarded()); | |
| 546 EXPECT_EQ(1, renderer_client_.set_full_root_layer_damage_count()); | |
| 547 | |
| 548 AddRenderPass(&render_passes_in_draw_order_, | |
| 549 RenderPassId(1, 0), | |
| 550 viewport_rect, | |
| 551 gfx::Transform()); | |
| 552 | |
| 553 renderer_->SetVisible(true); | |
| 554 DrawFrame(renderer_.get(), viewport_rect); | |
| 555 EXPECT_FALSE(renderer_->IsBackbufferDiscarded()); | |
| 556 | |
| 557 SwapBuffers(); | |
| 558 EXPECT_EQ(1u, output_surface_->num_sent_frames()); | |
| 559 } | |
| 560 | |
| 561 TEST_F(GLRendererWithDefaultHarnessTest, ExternalStencil) { | 502 TEST_F(GLRendererWithDefaultHarnessTest, ExternalStencil) { |
| 562 gfx::Rect viewport_rect(1, 1); | 503 gfx::Rect viewport_rect(1, 1); |
| 563 EXPECT_FALSE(renderer_->stencil_enabled()); | 504 EXPECT_FALSE(renderer_->stencil_enabled()); |
| 564 | 505 |
| 565 output_surface_->set_has_external_stencil_test(true); | 506 output_surface_->set_has_external_stencil_test(true); |
| 566 | 507 |
| 567 RenderPass* root_pass = | 508 RenderPass* root_pass = |
| 568 AddRenderPass(&render_passes_in_draw_order_, RenderPassId(1, 0), | 509 AddRenderPass(&render_passes_in_draw_order_, RenderPassId(1, 0), |
| 569 viewport_rect, gfx::Transform()); | 510 viewport_rect, gfx::Transform()); |
| 570 root_pass->has_transparent_background = false; | 511 root_pass->has_transparent_background = false; |
| (...skipping 106 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 677 new ForbidSynchronousCallContext))); | 618 new ForbidSynchronousCallContext))); |
| 678 CHECK(output_surface->BindToClient(&output_surface_client)); | 619 CHECK(output_surface->BindToClient(&output_surface_client)); |
| 679 | 620 |
| 680 std::unique_ptr<SharedBitmapManager> shared_bitmap_manager( | 621 std::unique_ptr<SharedBitmapManager> shared_bitmap_manager( |
| 681 new TestSharedBitmapManager()); | 622 new TestSharedBitmapManager()); |
| 682 std::unique_ptr<ResourceProvider> resource_provider = | 623 std::unique_ptr<ResourceProvider> resource_provider = |
| 683 FakeResourceProvider::Create(output_surface.get(), | 624 FakeResourceProvider::Create(output_surface.get(), |
| 684 shared_bitmap_manager.get()); | 625 shared_bitmap_manager.get()); |
| 685 | 626 |
| 686 RendererSettings settings; | 627 RendererSettings settings; |
| 687 FakeRendererClient renderer_client; | 628 FakeDirectRendererClient renderer_client; |
| 688 FakeRendererGL renderer(&renderer_client, | 629 FakeRendererGL renderer(&renderer_client, |
| 689 &settings, | 630 &settings, |
| 690 output_surface.get(), | 631 output_surface.get(), |
| 691 resource_provider.get()); | 632 resource_provider.get()); |
| 692 } | 633 } |
| 693 | 634 |
| 694 class LoseContextOnFirstGetContext : public TestWebGraphicsContext3D { | 635 class LoseContextOnFirstGetContext : public TestWebGraphicsContext3D { |
| 695 public: | 636 public: |
| 696 LoseContextOnFirstGetContext() {} | 637 LoseContextOnFirstGetContext() {} |
| 697 | 638 |
| (...skipping 15 matching lines...) Expand all Loading... |
| 713 new LoseContextOnFirstGetContext))); | 654 new LoseContextOnFirstGetContext))); |
| 714 CHECK(output_surface->BindToClient(&output_surface_client)); | 655 CHECK(output_surface->BindToClient(&output_surface_client)); |
| 715 | 656 |
| 716 std::unique_ptr<SharedBitmapManager> shared_bitmap_manager( | 657 std::unique_ptr<SharedBitmapManager> shared_bitmap_manager( |
| 717 new TestSharedBitmapManager()); | 658 new TestSharedBitmapManager()); |
| 718 std::unique_ptr<ResourceProvider> resource_provider = | 659 std::unique_ptr<ResourceProvider> resource_provider = |
| 719 FakeResourceProvider::Create(output_surface.get(), | 660 FakeResourceProvider::Create(output_surface.get(), |
| 720 shared_bitmap_manager.get()); | 661 shared_bitmap_manager.get()); |
| 721 | 662 |
| 722 RendererSettings settings; | 663 RendererSettings settings; |
| 723 FakeRendererClient renderer_client; | 664 FakeDirectRendererClient renderer_client; |
| 724 FakeRendererGL renderer(&renderer_client, | 665 FakeRendererGL renderer(&renderer_client, |
| 725 &settings, | 666 &settings, |
| 726 output_surface.get(), | 667 output_surface.get(), |
| 727 resource_provider.get()); | 668 resource_provider.get()); |
| 728 } | 669 } |
| 729 | 670 |
| 730 class ClearCountingContext : public TestWebGraphicsContext3D { | 671 class ClearCountingContext : public TestWebGraphicsContext3D { |
| 731 public: | 672 public: |
| 732 ClearCountingContext() { test_capabilities_.discard_framebuffer = true; } | 673 ClearCountingContext() { test_capabilities_.discard_framebuffer = true; } |
| 733 | 674 |
| (...skipping 13 matching lines...) Expand all Loading... |
| 747 FakeOutputSurface::Create3d(std::move(context_owned))); | 688 FakeOutputSurface::Create3d(std::move(context_owned))); |
| 748 CHECK(output_surface->BindToClient(&output_surface_client)); | 689 CHECK(output_surface->BindToClient(&output_surface_client)); |
| 749 | 690 |
| 750 std::unique_ptr<SharedBitmapManager> shared_bitmap_manager( | 691 std::unique_ptr<SharedBitmapManager> shared_bitmap_manager( |
| 751 new TestSharedBitmapManager()); | 692 new TestSharedBitmapManager()); |
| 752 std::unique_ptr<ResourceProvider> resource_provider = | 693 std::unique_ptr<ResourceProvider> resource_provider = |
| 753 FakeResourceProvider::Create(output_surface.get(), | 694 FakeResourceProvider::Create(output_surface.get(), |
| 754 shared_bitmap_manager.get()); | 695 shared_bitmap_manager.get()); |
| 755 | 696 |
| 756 RendererSettings settings; | 697 RendererSettings settings; |
| 757 FakeRendererClient renderer_client; | 698 FakeDirectRendererClient renderer_client; |
| 758 FakeRendererGL renderer(&renderer_client, | 699 FakeRendererGL renderer(&renderer_client, |
| 759 &settings, | 700 &settings, |
| 760 output_surface.get(), | 701 output_surface.get(), |
| 761 resource_provider.get()); | 702 resource_provider.get()); |
| 762 | 703 |
| 763 gfx::Rect viewport_rect(1, 1); | 704 gfx::Rect viewport_rect(1, 1); |
| 764 RenderPass* root_pass = | 705 RenderPass* root_pass = |
| 765 AddRenderPass(&render_passes_in_draw_order_, RenderPassId(1, 0), | 706 AddRenderPass(&render_passes_in_draw_order_, RenderPassId(1, 0), |
| 766 viewport_rect, gfx::Transform()); | 707 viewport_rect, gfx::Transform()); |
| 767 root_pass->has_transparent_background = false; | 708 root_pass->has_transparent_background = false; |
| (...skipping 21 matching lines...) Expand all Loading... |
| 789 FakeOutputSurface::Create3d(std::move(context_owned))); | 730 FakeOutputSurface::Create3d(std::move(context_owned))); |
| 790 CHECK(output_surface->BindToClient(&output_surface_client)); | 731 CHECK(output_surface->BindToClient(&output_surface_client)); |
| 791 | 732 |
| 792 std::unique_ptr<SharedBitmapManager> shared_bitmap_manager( | 733 std::unique_ptr<SharedBitmapManager> shared_bitmap_manager( |
| 793 new TestSharedBitmapManager()); | 734 new TestSharedBitmapManager()); |
| 794 std::unique_ptr<ResourceProvider> resource_provider = | 735 std::unique_ptr<ResourceProvider> resource_provider = |
| 795 FakeResourceProvider::Create(output_surface.get(), | 736 FakeResourceProvider::Create(output_surface.get(), |
| 796 shared_bitmap_manager.get()); | 737 shared_bitmap_manager.get()); |
| 797 | 738 |
| 798 RendererSettings settings; | 739 RendererSettings settings; |
| 799 FakeRendererClient renderer_client; | 740 FakeDirectRendererClient renderer_client; |
| 800 FakeRendererGL renderer(&renderer_client, | 741 FakeRendererGL renderer(&renderer_client, |
| 801 &settings, | 742 &settings, |
| 802 output_surface.get(), | 743 output_surface.get(), |
| 803 resource_provider.get()); | 744 resource_provider.get()); |
| 804 | 745 |
| 805 gfx::Rect viewport_rect(1, 1); | 746 gfx::Rect viewport_rect(1, 1); |
| 806 RenderPass* root_pass = | 747 RenderPass* root_pass = |
| 807 AddRenderPass(&render_passes_in_draw_order_, RenderPassId(1, 0), | 748 AddRenderPass(&render_passes_in_draw_order_, RenderPassId(1, 0), |
| 808 viewport_rect, gfx::Transform()); | 749 viewport_rect, gfx::Transform()); |
| 809 root_pass->has_transparent_background = true; | 750 root_pass->has_transparent_background = true; |
| (...skipping 14 matching lines...) Expand all Loading... |
| 824 FakeOutputSurface::CreateOffscreen(std::move(context_owned))); | 765 FakeOutputSurface::CreateOffscreen(std::move(context_owned))); |
| 825 CHECK(output_surface->BindToClient(&output_surface_client)); | 766 CHECK(output_surface->BindToClient(&output_surface_client)); |
| 826 | 767 |
| 827 std::unique_ptr<SharedBitmapManager> shared_bitmap_manager( | 768 std::unique_ptr<SharedBitmapManager> shared_bitmap_manager( |
| 828 new TestSharedBitmapManager()); | 769 new TestSharedBitmapManager()); |
| 829 std::unique_ptr<ResourceProvider> resource_provider = | 770 std::unique_ptr<ResourceProvider> resource_provider = |
| 830 FakeResourceProvider::Create(output_surface.get(), | 771 FakeResourceProvider::Create(output_surface.get(), |
| 831 shared_bitmap_manager.get()); | 772 shared_bitmap_manager.get()); |
| 832 | 773 |
| 833 RendererSettings settings; | 774 RendererSettings settings; |
| 834 FakeRendererClient renderer_client; | 775 FakeDirectRendererClient renderer_client; |
| 835 FakeRendererGL renderer(&renderer_client, | 776 FakeRendererGL renderer(&renderer_client, |
| 836 &settings, | 777 &settings, |
| 837 output_surface.get(), | 778 output_surface.get(), |
| 838 resource_provider.get()); | 779 resource_provider.get()); |
| 839 | 780 |
| 840 gfx::Rect viewport_rect(1, 1); | 781 gfx::Rect viewport_rect(1, 1); |
| 841 AddRenderPass(&render_passes_in_draw_order_, | 782 AddRenderPass(&render_passes_in_draw_order_, |
| 842 RenderPassId(1, 0), | 783 RenderPassId(1, 0), |
| 843 viewport_rect, | 784 viewport_rect, |
| 844 gfx::Transform()); | 785 gfx::Transform()); |
| (...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 883 FakeOutputSurface::Create3d(std::move(context_owned))); | 824 FakeOutputSurface::Create3d(std::move(context_owned))); |
| 884 CHECK(output_surface->BindToClient(&output_surface_client)); | 825 CHECK(output_surface->BindToClient(&output_surface_client)); |
| 885 | 826 |
| 886 std::unique_ptr<SharedBitmapManager> shared_bitmap_manager( | 827 std::unique_ptr<SharedBitmapManager> shared_bitmap_manager( |
| 887 new TestSharedBitmapManager()); | 828 new TestSharedBitmapManager()); |
| 888 std::unique_ptr<ResourceProvider> resource_provider = | 829 std::unique_ptr<ResourceProvider> resource_provider = |
| 889 FakeResourceProvider::Create(output_surface.get(), | 830 FakeResourceProvider::Create(output_surface.get(), |
| 890 shared_bitmap_manager.get()); | 831 shared_bitmap_manager.get()); |
| 891 | 832 |
| 892 RendererSettings settings; | 833 RendererSettings settings; |
| 893 FakeRendererClient renderer_client; | 834 FakeDirectRendererClient renderer_client; |
| 894 FakeRendererGL renderer(&renderer_client, | 835 FakeRendererGL renderer(&renderer_client, |
| 895 &settings, | 836 &settings, |
| 896 output_surface.get(), | 837 output_surface.get(), |
| 897 resource_provider.get()); | 838 resource_provider.get()); |
| 898 | 839 |
| 899 // During initialization we are allowed to set any texture parameters. | 840 // During initialization we are allowed to set any texture parameters. |
| 900 EXPECT_CALL(*context, texParameteri(_, _, _)).Times(AnyNumber()); | 841 EXPECT_CALL(*context, texParameteri(_, _, _)).Times(AnyNumber()); |
| 901 | 842 |
| 902 RenderPass* root_pass = | 843 RenderPass* root_pass = |
| 903 AddRenderPass(&render_passes_in_draw_order_, RenderPassId(1, 1), | 844 AddRenderPass(&render_passes_in_draw_order_, RenderPassId(1, 1), |
| (...skipping 63 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 967 | 908 |
| 968 std::unique_ptr<SharedBitmapManager> shared_bitmap_manager( | 909 std::unique_ptr<SharedBitmapManager> shared_bitmap_manager( |
| 969 new TestSharedBitmapManager()); | 910 new TestSharedBitmapManager()); |
| 970 std::unique_ptr<ResourceProvider> resource_provider = | 911 std::unique_ptr<ResourceProvider> resource_provider = |
| 971 FakeResourceProvider::Create(output_surface.get(), | 912 FakeResourceProvider::Create(output_surface.get(), |
| 972 shared_bitmap_manager.get()); | 913 shared_bitmap_manager.get()); |
| 973 | 914 |
| 974 RendererSettings settings; | 915 RendererSettings settings; |
| 975 settings.should_clear_root_render_pass = false; | 916 settings.should_clear_root_render_pass = false; |
| 976 | 917 |
| 977 FakeRendererClient renderer_client; | 918 FakeDirectRendererClient renderer_client; |
| 978 FakeRendererGL renderer(&renderer_client, | 919 FakeRendererGL renderer(&renderer_client, |
| 979 &settings, | 920 &settings, |
| 980 output_surface.get(), | 921 output_surface.get(), |
| 981 resource_provider.get()); | 922 resource_provider.get()); |
| 982 | 923 |
| 983 gfx::Rect viewport_rect(10, 10); | 924 gfx::Rect viewport_rect(10, 10); |
| 984 | 925 |
| 985 RenderPassId child_pass_id(2, 0); | 926 RenderPassId child_pass_id(2, 0); |
| 986 RenderPass* child_pass = | 927 RenderPass* child_pass = |
| 987 AddRenderPass(&render_passes_in_draw_order_, child_pass_id, viewport_rect, | 928 AddRenderPass(&render_passes_in_draw_order_, child_pass_id, viewport_rect, |
| (...skipping 64 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1052 TestContextProvider::Create(std::move(gl_owned)))); | 993 TestContextProvider::Create(std::move(gl_owned)))); |
| 1053 CHECK(output_surface->BindToClient(&output_surface_client)); | 994 CHECK(output_surface->BindToClient(&output_surface_client)); |
| 1054 | 995 |
| 1055 std::unique_ptr<SharedBitmapManager> shared_bitmap_manager( | 996 std::unique_ptr<SharedBitmapManager> shared_bitmap_manager( |
| 1056 new TestSharedBitmapManager()); | 997 new TestSharedBitmapManager()); |
| 1057 std::unique_ptr<ResourceProvider> resource_provider = | 998 std::unique_ptr<ResourceProvider> resource_provider = |
| 1058 FakeResourceProvider::Create(output_surface.get(), | 999 FakeResourceProvider::Create(output_surface.get(), |
| 1059 shared_bitmap_manager.get()); | 1000 shared_bitmap_manager.get()); |
| 1060 | 1001 |
| 1061 RendererSettings settings; | 1002 RendererSettings settings; |
| 1062 FakeRendererClient renderer_client; | 1003 FakeDirectRendererClient renderer_client; |
| 1063 FakeRendererGL renderer(&renderer_client, | 1004 FakeRendererGL renderer(&renderer_client, |
| 1064 &settings, | 1005 &settings, |
| 1065 output_surface.get(), | 1006 output_surface.get(), |
| 1066 resource_provider.get()); | 1007 resource_provider.get()); |
| 1067 EXPECT_FALSE(renderer.Capabilities().using_partial_swap); | 1008 EXPECT_FALSE(renderer.Capabilities().using_partial_swap); |
| 1068 | 1009 |
| 1069 gfx::Rect viewport_rect(1, 1); | 1010 gfx::Rect viewport_rect(1, 1); |
| 1070 | 1011 |
| 1071 gfx::Rect grand_child_rect(25, 25); | 1012 gfx::Rect grand_child_rect(25, 25); |
| 1072 RenderPassId grand_child_pass_id(3, 0); | 1013 RenderPassId grand_child_pass_id(3, 0); |
| (...skipping 70 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1143 output_surface->set_fixed_size(gfx::Size(100, 100)); | 1084 output_surface->set_fixed_size(gfx::Size(100, 100)); |
| 1144 | 1085 |
| 1145 std::unique_ptr<SharedBitmapManager> shared_bitmap_manager( | 1086 std::unique_ptr<SharedBitmapManager> shared_bitmap_manager( |
| 1146 new TestSharedBitmapManager()); | 1087 new TestSharedBitmapManager()); |
| 1147 std::unique_ptr<ResourceProvider> resource_provider = | 1088 std::unique_ptr<ResourceProvider> resource_provider = |
| 1148 FakeResourceProvider::Create(output_surface.get(), | 1089 FakeResourceProvider::Create(output_surface.get(), |
| 1149 shared_bitmap_manager.get()); | 1090 shared_bitmap_manager.get()); |
| 1150 | 1091 |
| 1151 RendererSettings settings; | 1092 RendererSettings settings; |
| 1152 settings.partial_swap_enabled = true; | 1093 settings.partial_swap_enabled = true; |
| 1153 FakeRendererClient renderer_client; | 1094 FakeDirectRendererClient renderer_client; |
| 1154 FakeRendererGL renderer(&renderer_client, | 1095 FakeRendererGL renderer(&renderer_client, |
| 1155 &settings, | 1096 &settings, |
| 1156 output_surface.get(), | 1097 output_surface.get(), |
| 1157 resource_provider.get()); | 1098 resource_provider.get()); |
| 1158 EXPECT_TRUE(renderer.Capabilities().using_partial_swap); | 1099 EXPECT_TRUE(renderer.Capabilities().using_partial_swap); |
| 1159 | 1100 |
| 1160 gfx::Rect viewport_rect(100, 100); | 1101 gfx::Rect viewport_rect(100, 100); |
| 1161 gfx::Rect clip_rect(100, 100); | 1102 gfx::Rect clip_rect(100, 100); |
| 1162 | 1103 |
| 1163 { | 1104 { |
| (...skipping 113 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1277 new NonReshapableOutputSurface(std::move(gl_owned))); | 1218 new NonReshapableOutputSurface(std::move(gl_owned))); |
| 1278 CHECK(output_surface->BindToClient(&output_surface_client)); | 1219 CHECK(output_surface->BindToClient(&output_surface_client)); |
| 1279 | 1220 |
| 1280 std::unique_ptr<SharedBitmapManager> shared_bitmap_manager( | 1221 std::unique_ptr<SharedBitmapManager> shared_bitmap_manager( |
| 1281 new TestSharedBitmapManager()); | 1222 new TestSharedBitmapManager()); |
| 1282 std::unique_ptr<ResourceProvider> resource_provider = | 1223 std::unique_ptr<ResourceProvider> resource_provider = |
| 1283 FakeResourceProvider::Create(output_surface.get(), | 1224 FakeResourceProvider::Create(output_surface.get(), |
| 1284 shared_bitmap_manager.get()); | 1225 shared_bitmap_manager.get()); |
| 1285 | 1226 |
| 1286 RendererSettings settings; | 1227 RendererSettings settings; |
| 1287 FakeRendererClient renderer_client; | 1228 FakeDirectRendererClient renderer_client; |
| 1288 FakeRendererGL renderer(&renderer_client, | 1229 FakeRendererGL renderer(&renderer_client, |
| 1289 &settings, | 1230 &settings, |
| 1290 output_surface.get(), | 1231 output_surface.get(), |
| 1291 resource_provider.get()); | 1232 resource_provider.get()); |
| 1292 EXPECT_FALSE(renderer.Capabilities().using_partial_swap); | 1233 EXPECT_FALSE(renderer.Capabilities().using_partial_swap); |
| 1293 | 1234 |
| 1294 gfx::Rect device_viewport_rect(10, 10, 100, 100); | 1235 gfx::Rect device_viewport_rect(10, 10, 100, 100); |
| 1295 gfx::Rect viewport_rect(device_viewport_rect.size()); | 1236 gfx::Rect viewport_rect(device_viewport_rect.size()); |
| 1296 gfx::Rect quad_rect = gfx::Rect(20, 20, 20, 20); | 1237 gfx::Rect quad_rect = gfx::Rect(20, 20, 20, 20); |
| 1297 | 1238 |
| (...skipping 18 matching lines...) Expand all Loading... |
| 1316 FakeOutputSurface::Create3d(TestWebGraphicsContext3D::Create())); | 1257 FakeOutputSurface::Create3d(TestWebGraphicsContext3D::Create())); |
| 1317 CHECK(output_surface->BindToClient(&output_surface_client)); | 1258 CHECK(output_surface->BindToClient(&output_surface_client)); |
| 1318 | 1259 |
| 1319 std::unique_ptr<SharedBitmapManager> shared_bitmap_manager( | 1260 std::unique_ptr<SharedBitmapManager> shared_bitmap_manager( |
| 1320 new TestSharedBitmapManager()); | 1261 new TestSharedBitmapManager()); |
| 1321 std::unique_ptr<ResourceProvider> resource_provider = | 1262 std::unique_ptr<ResourceProvider> resource_provider = |
| 1322 FakeResourceProvider::Create(output_surface.get(), | 1263 FakeResourceProvider::Create(output_surface.get(), |
| 1323 shared_bitmap_manager.get()); | 1264 shared_bitmap_manager.get()); |
| 1324 | 1265 |
| 1325 RendererSettings settings; | 1266 RendererSettings settings; |
| 1326 FakeRendererClient renderer_client; | 1267 FakeDirectRendererClient renderer_client; |
| 1327 FakeRendererGL renderer(&renderer_client, &settings, output_surface.get(), | 1268 FakeRendererGL renderer(&renderer_client, &settings, output_surface.get(), |
| 1328 resource_provider.get()); | 1269 resource_provider.get()); |
| 1329 EXPECT_FALSE(renderer.Capabilities().using_partial_swap); | 1270 EXPECT_FALSE(renderer.Capabilities().using_partial_swap); |
| 1330 | 1271 |
| 1331 gfx::Rect device_viewport_rect(0, 0, 100, 100); | 1272 gfx::Rect device_viewport_rect(0, 0, 100, 100); |
| 1332 gfx::Rect viewport_rect(device_viewport_rect.size()); | 1273 gfx::Rect viewport_rect(device_viewport_rect.size()); |
| 1333 gfx::Rect quad_rect = gfx::Rect(20, 20, 20, 20); | 1274 gfx::Rect quad_rect = gfx::Rect(20, 20, 20, 20); |
| 1334 | 1275 |
| 1335 RenderPassId root_pass_id(1, 0); | 1276 RenderPassId root_pass_id(1, 0); |
| 1336 RenderPass* root_pass = | 1277 RenderPass* root_pass = |
| (...skipping 408 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1745 return static_cast<OutputSurfaceMockContext*>( | 1686 return static_cast<OutputSurfaceMockContext*>( |
| 1746 static_cast<TestContextProvider*>(output_surface_.context_provider()) | 1687 static_cast<TestContextProvider*>(output_surface_.context_provider()) |
| 1747 ->TestContext3d()); | 1688 ->TestContext3d()); |
| 1748 } | 1689 } |
| 1749 | 1690 |
| 1750 RendererSettings settings_; | 1691 RendererSettings settings_; |
| 1751 FakeOutputSurfaceClient output_surface_client_; | 1692 FakeOutputSurfaceClient output_surface_client_; |
| 1752 StrictMock<MockOutputSurface> output_surface_; | 1693 StrictMock<MockOutputSurface> output_surface_; |
| 1753 std::unique_ptr<SharedBitmapManager> shared_bitmap_manager_; | 1694 std::unique_ptr<SharedBitmapManager> shared_bitmap_manager_; |
| 1754 std::unique_ptr<ResourceProvider> resource_provider_; | 1695 std::unique_ptr<ResourceProvider> resource_provider_; |
| 1755 FakeRendererClient renderer_client_; | 1696 FakeDirectRendererClient renderer_client_; |
| 1756 std::unique_ptr<FakeRendererGL> renderer_; | 1697 std::unique_ptr<FakeRendererGL> renderer_; |
| 1757 }; | 1698 }; |
| 1758 | 1699 |
| 1759 TEST_F(MockOutputSurfaceTest, DrawFrameAndSwap) { | 1700 TEST_F(MockOutputSurfaceTest, DrawFrameAndSwap) { |
| 1760 gfx::Rect device_viewport_rect(1, 1); | 1701 gfx::Rect device_viewport_rect(1, 1); |
| 1761 DrawFrame(1.f, device_viewport_rect, true); | 1702 DrawFrame(1.f, device_viewport_rect, true); |
| 1762 | 1703 |
| 1763 EXPECT_CALL(output_surface_, SwapBuffers_(_)).Times(1); | 1704 EXPECT_CALL(output_surface_, SwapBuffers_(_)).Times(1); |
| 1764 renderer_->SwapBuffers(CompositorFrameMetadata()); | 1705 renderer_->SwapBuffers(CompositorFrameMetadata()); |
| 1765 } | 1706 } |
| (...skipping 83 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1849 | 1790 |
| 1850 std::unique_ptr<SharedBitmapManager> shared_bitmap_manager( | 1791 std::unique_ptr<SharedBitmapManager> shared_bitmap_manager( |
| 1851 new TestSharedBitmapManager()); | 1792 new TestSharedBitmapManager()); |
| 1852 std::unique_ptr<ResourceProvider> resource_provider = | 1793 std::unique_ptr<ResourceProvider> resource_provider = |
| 1853 FakeResourceProvider::Create(output_surface.get(), | 1794 FakeResourceProvider::Create(output_surface.get(), |
| 1854 shared_bitmap_manager.get()); | 1795 shared_bitmap_manager.get()); |
| 1855 std::unique_ptr<TextureMailboxDeleter> mailbox_deleter( | 1796 std::unique_ptr<TextureMailboxDeleter> mailbox_deleter( |
| 1856 new TextureMailboxDeleter(base::ThreadTaskRunnerHandle::Get())); | 1797 new TextureMailboxDeleter(base::ThreadTaskRunnerHandle::Get())); |
| 1857 | 1798 |
| 1858 RendererSettings settings; | 1799 RendererSettings settings; |
| 1859 FakeRendererClient renderer_client; | 1800 FakeDirectRendererClient renderer_client; |
| 1860 FakeRendererGL renderer(&renderer_client, &settings, output_surface.get(), | 1801 FakeRendererGL renderer(&renderer_client, &settings, output_surface.get(), |
| 1861 resource_provider.get(), mailbox_deleter.get()); | 1802 resource_provider.get(), mailbox_deleter.get()); |
| 1862 | 1803 |
| 1863 TestOverlayProcessor* processor = | 1804 TestOverlayProcessor* processor = |
| 1864 new TestOverlayProcessor(output_surface.get()); | 1805 new TestOverlayProcessor(output_surface.get()); |
| 1865 processor->Initialize(); | 1806 processor->Initialize(); |
| 1866 renderer.SetOverlayProcessor(processor); | 1807 renderer.SetOverlayProcessor(processor); |
| 1867 std::unique_ptr<TestOverlayProcessor::Validator> validator( | 1808 std::unique_ptr<TestOverlayProcessor::Validator> validator( |
| 1868 new TestOverlayProcessor::Validator); | 1809 new TestOverlayProcessor::Validator); |
| 1869 output_surface->SetOverlayCandidateValidator(validator.get()); | 1810 output_surface->SetOverlayCandidateValidator(validator.get()); |
| (...skipping 137 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2007 | 1948 |
| 2008 std::unique_ptr<SharedBitmapManager> shared_bitmap_manager( | 1949 std::unique_ptr<SharedBitmapManager> shared_bitmap_manager( |
| 2009 new TestSharedBitmapManager()); | 1950 new TestSharedBitmapManager()); |
| 2010 std::unique_ptr<ResourceProvider> resource_provider = | 1951 std::unique_ptr<ResourceProvider> resource_provider = |
| 2011 FakeResourceProvider::Create(output_surface.get(), | 1952 FakeResourceProvider::Create(output_surface.get(), |
| 2012 shared_bitmap_manager.get()); | 1953 shared_bitmap_manager.get()); |
| 2013 std::unique_ptr<TextureMailboxDeleter> mailbox_deleter( | 1954 std::unique_ptr<TextureMailboxDeleter> mailbox_deleter( |
| 2014 new TextureMailboxDeleter(base::ThreadTaskRunnerHandle::Get())); | 1955 new TextureMailboxDeleter(base::ThreadTaskRunnerHandle::Get())); |
| 2015 | 1956 |
| 2016 RendererSettings settings; | 1957 RendererSettings settings; |
| 2017 FakeRendererClient renderer_client; | 1958 FakeDirectRendererClient renderer_client; |
| 2018 FakeRendererGL renderer(&renderer_client, &settings, output_surface.get(), | 1959 FakeRendererGL renderer(&renderer_client, &settings, output_surface.get(), |
| 2019 resource_provider.get(), mailbox_deleter.get()); | 1960 resource_provider.get(), mailbox_deleter.get()); |
| 2020 | 1961 |
| 2021 SingleOverlayOnTopProcessor* processor = | 1962 SingleOverlayOnTopProcessor* processor = |
| 2022 new SingleOverlayOnTopProcessor(output_surface.get()); | 1963 new SingleOverlayOnTopProcessor(output_surface.get()); |
| 2023 processor->Initialize(); | 1964 processor->Initialize(); |
| 2024 renderer.SetOverlayProcessor(processor); | 1965 renderer.SetOverlayProcessor(processor); |
| 2025 | 1966 |
| 2026 gfx::Rect viewport_rect(1, 1); | 1967 gfx::Rect viewport_rect(1, 1); |
| 2027 RenderPass* root_pass = | 1968 RenderPass* root_pass = |
| (...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2085 FakeOutputSurfaceClient output_surface_client; | 2026 FakeOutputSurfaceClient output_surface_client; |
| 2086 std::unique_ptr<FakeOutputSurface> output_surface( | 2027 std::unique_ptr<FakeOutputSurface> output_surface( |
| 2087 FakeOutputSurface::Create3d(std::move(gl_owned))); | 2028 FakeOutputSurface::Create3d(std::move(gl_owned))); |
| 2088 CHECK(output_surface->BindToClient(&output_surface_client)); | 2029 CHECK(output_surface->BindToClient(&output_surface_client)); |
| 2089 | 2030 |
| 2090 std::unique_ptr<ResourceProvider> resource_provider = | 2031 std::unique_ptr<ResourceProvider> resource_provider = |
| 2091 FakeResourceProvider::Create(output_surface.get(), nullptr); | 2032 FakeResourceProvider::Create(output_surface.get(), nullptr); |
| 2092 | 2033 |
| 2093 RendererSettings settings; | 2034 RendererSettings settings; |
| 2094 settings.partial_swap_enabled = partial_swap; | 2035 settings.partial_swap_enabled = partial_swap; |
| 2095 FakeRendererClient renderer_client; | 2036 FakeDirectRendererClient renderer_client; |
| 2096 FakeRendererGL renderer(&renderer_client, &settings, output_surface.get(), | 2037 FakeRendererGL renderer(&renderer_client, &settings, output_surface.get(), |
| 2097 resource_provider.get()); | 2038 resource_provider.get()); |
| 2098 EXPECT_EQ(partial_swap, renderer.Capabilities().using_partial_swap); | 2039 EXPECT_EQ(partial_swap, renderer.Capabilities().using_partial_swap); |
| 2099 | 2040 |
| 2100 gfx::Rect viewport_rect(100, 100); | 2041 gfx::Rect viewport_rect(100, 100); |
| 2101 gfx::Rect clip_rect(100, 100); | 2042 gfx::Rect clip_rect(100, 100); |
| 2102 | 2043 |
| 2103 { | 2044 { |
| 2104 RenderPassId root_pass_id(1, 0); | 2045 RenderPassId root_pass_id(1, 0); |
| 2105 RenderPass* root_pass = | 2046 RenderPass* root_pass = |
| (...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2143 TEST_F(GLRendererPartialSwapTest, PartialSwap) { | 2084 TEST_F(GLRendererPartialSwapTest, PartialSwap) { |
| 2144 RunTest(true); | 2085 RunTest(true); |
| 2145 } | 2086 } |
| 2146 | 2087 |
| 2147 TEST_F(GLRendererPartialSwapTest, NoPartialSwap) { | 2088 TEST_F(GLRendererPartialSwapTest, NoPartialSwap) { |
| 2148 RunTest(false); | 2089 RunTest(false); |
| 2149 } | 2090 } |
| 2150 | 2091 |
| 2151 } // namespace | 2092 } // namespace |
| 2152 } // namespace cc | 2093 } // namespace cc |
| OLD | NEW |