Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(157)

Side by Side Diff: cc/trees/layer_tree_host_impl_unittest.cc

Issue 2188943002: Remove OutputSurfaceClient external clip (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: viewport -> viewport_size Created 4 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « cc/trees/layer_tree_host_impl.cc ('k') | cc/trees/layer_tree_host_unittest.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2011 The Chromium Authors. All rights reserved. 1 // Copyright 2011 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/trees/layer_tree_host_impl.h" 5 #include "cc/trees/layer_tree_host_impl.h"
6 6
7 #include <stddef.h> 7 #include <stddef.h>
8 8
9 #include <algorithm> 9 #include <algorithm>
10 #include <cmath> 10 #include <cmath>
(...skipping 571 matching lines...) Expand 10 before | Expand all | Expand 10 after
582 EXPECT_TRUE(host_impl_->CanDraw()); 582 EXPECT_TRUE(host_impl_->CanDraw());
583 host_impl_->SetViewportSize(gfx::Size()); 583 host_impl_->SetViewportSize(gfx::Size());
584 EXPECT_FALSE(host_impl_->CanDraw()); 584 EXPECT_FALSE(host_impl_->CanDraw());
585 585
586 FakeOutputSurface* fake_output_surface = 586 FakeOutputSurface* fake_output_surface =
587 static_cast<FakeOutputSurface*>(host_impl_->output_surface()); 587 static_cast<FakeOutputSurface*>(host_impl_->output_surface());
588 EXPECT_EQ(fake_output_surface->num_sent_frames(), 0u); 588 EXPECT_EQ(fake_output_surface->num_sent_frames(), 0u);
589 gfx::Transform identity; 589 gfx::Transform identity;
590 gfx::Rect viewport(100, 100); 590 gfx::Rect viewport(100, 100);
591 const bool resourceless_software_draw = true; 591 const bool resourceless_software_draw = true;
592 host_impl_->OnDraw(identity, viewport, viewport, resourceless_software_draw); 592 host_impl_->OnDraw(identity, viewport, resourceless_software_draw);
593 ASSERT_EQ(fake_output_surface->num_sent_frames(), 1u); 593 ASSERT_EQ(fake_output_surface->num_sent_frames(), 1u);
594 EXPECT_EQ(gfx::SizeF(100.f, 100.f), 594 EXPECT_EQ(gfx::SizeF(100.f, 100.f),
595 fake_output_surface->last_sent_frame()->metadata.root_layer_size); 595 fake_output_surface->last_sent_frame()->metadata.root_layer_size);
596 } 596 }
597 597
598 TEST_F(LayerTreeHostImplTest, ScrollDeltaNoLayers) { 598 TEST_F(LayerTreeHostImplTest, ScrollDeltaNoLayers) {
599 ASSERT_FALSE(host_impl_->active_tree()->root_layer_for_testing()); 599 ASSERT_FALSE(host_impl_->active_tree()->root_layer_for_testing());
600 600
601 std::unique_ptr<ScrollAndScaleSet> scroll_info = 601 std::unique_ptr<ScrollAndScaleSet> scroll_info =
602 host_impl_->ProcessScrollDeltas(); 602 host_impl_->ProcessScrollDeltas();
(...skipping 3184 matching lines...) Expand 10 before | Expand all | Expand 10 after
3787 } 3787 }
3788 } 3788 }
3789 3789
3790 TEST_F(LayerTreeHostImplTest, 3790 TEST_F(LayerTreeHostImplTest,
3791 PrepareToDrawWhenDrawAndSwapFullViewportEveryFrame) { 3791 PrepareToDrawWhenDrawAndSwapFullViewportEveryFrame) {
3792 CreateHostImpl(DefaultSettings(), 3792 CreateHostImpl(DefaultSettings(),
3793 FakeOutputSurface::CreateDelegatingSoftware()); 3793 FakeOutputSurface::CreateDelegatingSoftware());
3794 3794
3795 const gfx::Transform external_transform; 3795 const gfx::Transform external_transform;
3796 const gfx::Rect external_viewport; 3796 const gfx::Rect external_viewport;
3797 const gfx::Rect external_clip;
3798 const bool resourceless_software_draw = true; 3797 const bool resourceless_software_draw = true;
3799 host_impl_->SetExternalTilePriorityConstraints(external_viewport, 3798 host_impl_->SetExternalTilePriorityConstraints(external_viewport,
3800 external_transform); 3799 external_transform);
3801 3800
3802 std::vector<PrepareToDrawSuccessTestCase> cases; 3801 std::vector<PrepareToDrawSuccessTestCase> cases;
3803 3802
3804 // 0. Default case. 3803 // 0. Default case.
3805 cases.push_back(PrepareToDrawSuccessTestCase(DRAW_SUCCESS)); 3804 cases.push_back(PrepareToDrawSuccessTestCase(DRAW_SUCCESS));
3806 // 1. Animation with missing tile. 3805 // 1. Animation with missing tile.
3807 cases.push_back(PrepareToDrawSuccessTestCase(DRAW_SUCCESS)); 3806 cases.push_back(PrepareToDrawSuccessTestCase(DRAW_SUCCESS));
3808 cases.back().layer_between.has_missing_tile = true; 3807 cases.back().layer_between.has_missing_tile = true;
3809 cases.back().layer_between.is_animating = true; 3808 cases.back().layer_between.is_animating = true;
3810 // 2. High res required with incomplete tile. 3809 // 2. High res required with incomplete tile.
3811 cases.push_back(PrepareToDrawSuccessTestCase(DRAW_SUCCESS)); 3810 cases.push_back(PrepareToDrawSuccessTestCase(DRAW_SUCCESS));
3812 cases.back().high_res_required = true; 3811 cases.back().high_res_required = true;
3813 cases.back().layer_between.has_incomplete_tile = true; 3812 cases.back().layer_between.has_incomplete_tile = true;
3814 // 3. High res required with missing tile. 3813 // 3. High res required with missing tile.
3815 cases.push_back(PrepareToDrawSuccessTestCase(DRAW_SUCCESS)); 3814 cases.push_back(PrepareToDrawSuccessTestCase(DRAW_SUCCESS));
3816 cases.back().high_res_required = true; 3815 cases.back().high_res_required = true;
3817 cases.back().layer_between.has_missing_tile = true; 3816 cases.back().layer_between.has_missing_tile = true;
3818 3817
3819 host_impl_->active_tree()->SetRootLayerForTesting( 3818 host_impl_->active_tree()->SetRootLayerForTesting(
3820 DidDrawCheckLayer::Create(host_impl_->active_tree(), 1)); 3819 DidDrawCheckLayer::Create(host_impl_->active_tree(), 1));
3821 DidDrawCheckLayer* root = static_cast<DidDrawCheckLayer*>( 3820 DidDrawCheckLayer* root = static_cast<DidDrawCheckLayer*>(
3822 host_impl_->active_tree()->root_layer_for_testing()); 3821 host_impl_->active_tree()->root_layer_for_testing());
3823 root->test_properties()->force_render_surface = true; 3822 root->test_properties()->force_render_surface = true;
3824 host_impl_->active_tree()->BuildPropertyTreesForTesting(); 3823 host_impl_->active_tree()->BuildPropertyTreesForTesting();
3825 3824
3826 host_impl_->OnDraw(external_transform, external_viewport, external_clip, 3825 host_impl_->OnDraw(external_transform, external_viewport,
3827 resourceless_software_draw); 3826 resourceless_software_draw);
3828 3827
3829 for (size_t i = 0; i < cases.size(); ++i) { 3828 for (size_t i = 0; i < cases.size(); ++i) {
3830 const auto& testcase = cases[i]; 3829 const auto& testcase = cases[i];
3831 std::vector<LayerImpl*> to_remove; 3830 std::vector<LayerImpl*> to_remove;
3832 for (auto* child : root->test_properties()->children) 3831 for (auto* child : root->test_properties()->children)
3833 to_remove.push_back(child); 3832 to_remove.push_back(child);
3834 for (auto* child : to_remove) 3833 for (auto* child : to_remove)
3835 root->test_properties()->RemoveChild(child); 3834 root->test_properties()->RemoveChild(child);
3836 3835
3837 std::ostringstream scope; 3836 std::ostringstream scope;
3838 scope << "Test case: " << i; 3837 scope << "Test case: " << i;
3839 SCOPED_TRACE(scope.str()); 3838 SCOPED_TRACE(scope.str());
3840 3839
3841 CreateLayerFromState(root, timeline(), testcase.layer_before); 3840 CreateLayerFromState(root, timeline(), testcase.layer_before);
3842 CreateLayerFromState(root, timeline(), testcase.layer_between); 3841 CreateLayerFromState(root, timeline(), testcase.layer_between);
3843 CreateLayerFromState(root, timeline(), testcase.layer_after); 3842 CreateLayerFromState(root, timeline(), testcase.layer_after);
3844 host_impl_->active_tree()->BuildPropertyTreesForTesting(); 3843 host_impl_->active_tree()->BuildPropertyTreesForTesting();
3845 3844
3846 if (testcase.high_res_required) 3845 if (testcase.high_res_required)
3847 host_impl_->SetRequiresHighResToDraw(); 3846 host_impl_->SetRequiresHighResToDraw();
3848 3847
3849 host_impl_->OnDraw(external_transform, external_viewport, external_clip, 3848 host_impl_->OnDraw(external_transform, external_viewport,
3850 resourceless_software_draw); 3849 resourceless_software_draw);
3851 } 3850 }
3852 } 3851 }
3853 3852
3854 TEST_F(LayerTreeHostImplTest, ScrollRootIgnored) { 3853 TEST_F(LayerTreeHostImplTest, ScrollRootIgnored) {
3855 std::unique_ptr<LayerImpl> root = 3854 std::unique_ptr<LayerImpl> root =
3856 LayerImpl::Create(host_impl_->active_tree(), 1); 3855 LayerImpl::Create(host_impl_->active_tree(), 1);
3857 root->SetScrollClipLayer(Layer::INVALID_ID); 3856 root->SetScrollClipLayer(Layer::INVALID_ID);
3858 root->test_properties()->force_render_surface = true; 3857 root->test_properties()->force_render_surface = true;
3859 host_impl_->active_tree()->SetRootLayerForTesting(std::move(root)); 3858 host_impl_->active_tree()->SetRootLayerForTesting(std::move(root));
(...skipping 2935 matching lines...) Expand 10 before | Expand all | Expand 10 after
6795 EXPECT_EQ(DRAW_SUCCESS, host_impl_->PrepareToDraw(&frame)); 6794 EXPECT_EQ(DRAW_SUCCESS, host_impl_->PrepareToDraw(&frame));
6796 VerifyEmptyLayerRenderPasses(frame.render_passes); 6795 VerifyEmptyLayerRenderPasses(frame.render_passes);
6797 host_impl_->DidDrawAllLayers(frame); 6796 host_impl_->DidDrawAllLayers(frame);
6798 } 6797 }
6799 6798
6800 void TestEmptyLayerWithOnDraw() { 6799 void TestEmptyLayerWithOnDraw() {
6801 SetUpEmptylayer(); 6800 SetUpEmptylayer();
6802 gfx::Transform identity; 6801 gfx::Transform identity;
6803 gfx::Rect viewport(viewport_size_); 6802 gfx::Rect viewport(viewport_size_);
6804 bool resourceless_software_draw = true; 6803 bool resourceless_software_draw = true;
6805 host_impl_->OnDraw(identity, viewport, viewport, 6804 host_impl_->OnDraw(identity, viewport, resourceless_software_draw);
6806 resourceless_software_draw);
6807 VerifyEmptyLayerRenderPasses(last_on_draw_render_passes_); 6805 VerifyEmptyLayerRenderPasses(last_on_draw_render_passes_);
6808 } 6806 }
6809 6807
6810 // Expect four surrounding gutter rects. 6808 // Expect four surrounding gutter rects.
6811 void SetUpLayerInMiddleOfViewport() { 6809 void SetUpLayerInMiddleOfViewport() {
6812 gfx::Rect layer_rect(500, 500, 200, 200); 6810 gfx::Rect layer_rect(500, 500, 200, 200);
6813 child_->SetPosition(gfx::PointF(layer_rect.origin())); 6811 child_->SetPosition(gfx::PointF(layer_rect.origin()));
6814 child_->SetBounds(layer_rect.size()); 6812 child_->SetBounds(layer_rect.size());
6815 child_->SetQuadRect(gfx::Rect(layer_rect.size())); 6813 child_->SetQuadRect(gfx::Rect(layer_rect.size()));
6816 child_->SetQuadVisibleRect(gfx::Rect(layer_rect.size())); 6814 child_->SetQuadVisibleRect(gfx::Rect(layer_rect.size()));
(...skipping 16 matching lines...) Expand all
6833 EXPECT_EQ(DRAW_SUCCESS, host_impl_->PrepareToDraw(&frame)); 6831 EXPECT_EQ(DRAW_SUCCESS, host_impl_->PrepareToDraw(&frame));
6834 VerifyLayerInMiddleOfViewport(frame.render_passes); 6832 VerifyLayerInMiddleOfViewport(frame.render_passes);
6835 host_impl_->DidDrawAllLayers(frame); 6833 host_impl_->DidDrawAllLayers(frame);
6836 } 6834 }
6837 6835
6838 void TestLayerInMiddleOfViewportWithOnDraw() { 6836 void TestLayerInMiddleOfViewportWithOnDraw() {
6839 SetUpLayerInMiddleOfViewport(); 6837 SetUpLayerInMiddleOfViewport();
6840 gfx::Transform identity; 6838 gfx::Transform identity;
6841 gfx::Rect viewport(viewport_size_); 6839 gfx::Rect viewport(viewport_size_);
6842 bool resourceless_software_draw = true; 6840 bool resourceless_software_draw = true;
6843 host_impl_->OnDraw(identity, viewport, viewport, 6841 host_impl_->OnDraw(identity, viewport, resourceless_software_draw);
6844 resourceless_software_draw);
6845 VerifyLayerInMiddleOfViewport(last_on_draw_render_passes_); 6842 VerifyLayerInMiddleOfViewport(last_on_draw_render_passes_);
6846 } 6843 }
6847 6844
6848 // Expect no gutter rects. 6845 // Expect no gutter rects.
6849 void SetUpLayerIsLargerThanViewport() { 6846 void SetUpLayerIsLargerThanViewport() {
6850 gfx::Rect layer_rect(viewport_size_.width() + 10, 6847 gfx::Rect layer_rect(viewport_size_.width() + 10,
6851 viewport_size_.height() + 10); 6848 viewport_size_.height() + 10);
6852 child_->SetPosition(gfx::PointF(layer_rect.origin())); 6849 child_->SetPosition(gfx::PointF(layer_rect.origin()));
6853 child_->SetBounds(layer_rect.size()); 6850 child_->SetBounds(layer_rect.size());
6854 child_->SetQuadRect(gfx::Rect(layer_rect.size())); 6851 child_->SetQuadRect(gfx::Rect(layer_rect.size()));
(...skipping 15 matching lines...) Expand all
6870 EXPECT_EQ(DRAW_SUCCESS, host_impl_->PrepareToDraw(&frame)); 6867 EXPECT_EQ(DRAW_SUCCESS, host_impl_->PrepareToDraw(&frame));
6871 VerifyLayerIsLargerThanViewport(frame.render_passes); 6868 VerifyLayerIsLargerThanViewport(frame.render_passes);
6872 host_impl_->DidDrawAllLayers(frame); 6869 host_impl_->DidDrawAllLayers(frame);
6873 } 6870 }
6874 6871
6875 void TestLayerIsLargerThanViewportWithOnDraw() { 6872 void TestLayerIsLargerThanViewportWithOnDraw() {
6876 SetUpLayerIsLargerThanViewport(); 6873 SetUpLayerIsLargerThanViewport();
6877 gfx::Transform identity; 6874 gfx::Transform identity;
6878 gfx::Rect viewport(viewport_size_); 6875 gfx::Rect viewport(viewport_size_);
6879 bool resourceless_software_draw = true; 6876 bool resourceless_software_draw = true;
6880 host_impl_->OnDraw(identity, viewport, viewport, 6877 host_impl_->OnDraw(identity, viewport, resourceless_software_draw);
6881 resourceless_software_draw);
6882 VerifyLayerIsLargerThanViewport(last_on_draw_render_passes_); 6878 VerifyLayerIsLargerThanViewport(last_on_draw_render_passes_);
6883 } 6879 }
6884 6880
6885 void DidActivateSyncTree() override { did_activate_pending_tree_ = true; } 6881 void DidActivateSyncTree() override { did_activate_pending_tree_ = true; }
6886 6882
6887 void set_gutter_quad_material(DrawQuad::Material material) { 6883 void set_gutter_quad_material(DrawQuad::Material material) {
6888 gutter_quad_material_ = material; 6884 gutter_quad_material_ = material;
6889 } 6885 }
6890 void set_gutter_texture_size(const gfx::Size& gutter_texture_size) { 6886 void set_gutter_texture_size(const gfx::Size& gutter_texture_size) {
6891 gutter_texture_size_ = gutter_texture_size; 6887 gutter_texture_size_ = gutter_texture_size;
(...skipping 710 matching lines...) Expand 10 before | Expand all | Expand 10 after
7602 }; 7598 };
7603 7599
7604 TEST_F(LayerTreeHostImplTest, 7600 TEST_F(LayerTreeHostImplTest,
7605 ForcedDrawToSoftwareDeviceSkipsUnsupportedLayers) { 7601 ForcedDrawToSoftwareDeviceSkipsUnsupportedLayers) {
7606 set_reduce_memory_result(false); 7602 set_reduce_memory_result(false);
7607 EXPECT_TRUE(CreateHostImpl(DefaultSettings(), 7603 EXPECT_TRUE(CreateHostImpl(DefaultSettings(),
7608 FakeOutputSurface::CreateDelegatingSoftware())); 7604 FakeOutputSurface::CreateDelegatingSoftware()));
7609 7605
7610 const gfx::Transform external_transform; 7606 const gfx::Transform external_transform;
7611 const gfx::Rect external_viewport; 7607 const gfx::Rect external_viewport;
7612 const gfx::Rect external_clip;
7613 const bool resourceless_software_draw = true; 7608 const bool resourceless_software_draw = true;
7614 host_impl_->SetExternalTilePriorityConstraints(external_viewport, 7609 host_impl_->SetExternalTilePriorityConstraints(external_viewport,
7615 external_transform); 7610 external_transform);
7616 7611
7617 // SolidColorLayerImpl will be drawn. 7612 // SolidColorLayerImpl will be drawn.
7618 std::unique_ptr<SolidColorLayerImpl> root_layer = 7613 std::unique_ptr<SolidColorLayerImpl> root_layer =
7619 SolidColorLayerImpl::Create(host_impl_->active_tree(), 1); 7614 SolidColorLayerImpl::Create(host_impl_->active_tree(), 1);
7620 7615
7621 // VideoLayerImpl will not be drawn. 7616 // VideoLayerImpl will not be drawn.
7622 FakeVideoFrameProvider provider; 7617 FakeVideoFrameProvider provider;
7623 std::unique_ptr<VideoLayerImpl> video_layer = VideoLayerImpl::Create( 7618 std::unique_ptr<VideoLayerImpl> video_layer = VideoLayerImpl::Create(
7624 host_impl_->active_tree(), 2, &provider, media::VIDEO_ROTATION_0); 7619 host_impl_->active_tree(), 2, &provider, media::VIDEO_ROTATION_0);
7625 video_layer->SetBounds(gfx::Size(10, 10)); 7620 video_layer->SetBounds(gfx::Size(10, 10));
7626 video_layer->SetDrawsContent(true); 7621 video_layer->SetDrawsContent(true);
7627 root_layer->test_properties()->AddChild(std::move(video_layer)); 7622 root_layer->test_properties()->AddChild(std::move(video_layer));
7628 SetupRootLayerImpl(std::move(root_layer)); 7623 SetupRootLayerImpl(std::move(root_layer));
7629 host_impl_->active_tree()->BuildPropertyTreesForTesting(); 7624 host_impl_->active_tree()->BuildPropertyTreesForTesting();
7630 7625
7631 host_impl_->OnDraw(external_transform, external_viewport, external_clip, 7626 host_impl_->OnDraw(external_transform, external_viewport,
7632 resourceless_software_draw); 7627 resourceless_software_draw);
7633 7628
7634 EXPECT_EQ(1u, last_on_draw_frame_->will_draw_layers.size()); 7629 EXPECT_EQ(1u, last_on_draw_frame_->will_draw_layers.size());
7635 EXPECT_EQ(host_impl_->active_tree()->root_layer_for_testing(), 7630 EXPECT_EQ(host_impl_->active_tree()->root_layer_for_testing(),
7636 last_on_draw_frame_->will_draw_layers[0]); 7631 last_on_draw_frame_->will_draw_layers[0]);
7637 } 7632 }
7638 7633
7639 // Checks that we have a non-0 default allocation if we pass a context that 7634 // Checks that we have a non-0 default allocation if we pass a context that
7640 // doesn't support memory management extensions. 7635 // doesn't support memory management extensions.
7641 TEST_F(LayerTreeHostImplTest, DefaultMemoryAllocation) { 7636 TEST_F(LayerTreeHostImplTest, DefaultMemoryAllocation) {
(...skipping 1679 matching lines...) Expand 10 before | Expand all | Expand 10 after
9321 EXPECT_EQ(host_impl_->global_tile_state().hard_memory_limit_in_bytes, 9316 EXPECT_EQ(host_impl_->global_tile_state().hard_memory_limit_in_bytes,
9322 300u * 1024u * 1024u); 9317 300u * 1024u * 1024u);
9323 EXPECT_EQ(host_impl_->global_tile_state().soft_memory_limit_in_bytes, 9318 EXPECT_EQ(host_impl_->global_tile_state().soft_memory_limit_in_bytes,
9324 150u * 1024u * 1024u); 9319 150u * 1024u * 1024u);
9325 } 9320 }
9326 9321
9327 TEST_F(LayerTreeHostImplTest, ExternalTransformReflectedInNextDraw) { 9322 TEST_F(LayerTreeHostImplTest, ExternalTransformReflectedInNextDraw) {
9328 const gfx::Size layer_size(100, 100); 9323 const gfx::Size layer_size(100, 100);
9329 gfx::Transform external_transform; 9324 gfx::Transform external_transform;
9330 const gfx::Rect external_viewport(layer_size); 9325 const gfx::Rect external_viewport(layer_size);
9331 const gfx::Rect external_clip(layer_size);
9332 const bool resourceless_software_draw = false; 9326 const bool resourceless_software_draw = false;
9333 LayerImpl* layer = SetupScrollAndContentsLayers(layer_size); 9327 LayerImpl* layer = SetupScrollAndContentsLayers(layer_size);
9334 layer->SetDrawsContent(true); 9328 layer->SetDrawsContent(true);
9335 9329
9336 host_impl_->SetExternalTilePriorityConstraints(external_viewport, 9330 host_impl_->SetExternalTilePriorityConstraints(external_viewport,
9337 external_transform); 9331 external_transform);
9338 host_impl_->OnDraw(external_transform, external_viewport, external_clip, 9332 host_impl_->OnDraw(external_transform, external_viewport,
9339 resourceless_software_draw); 9333 resourceless_software_draw);
9340 EXPECT_TRANSFORMATION_MATRIX_EQ( 9334 EXPECT_TRANSFORMATION_MATRIX_EQ(
9341 external_transform, layer->draw_properties().target_space_transform); 9335 external_transform, layer->draw_properties().target_space_transform);
9342 9336
9343 external_transform.Translate(20, 20); 9337 external_transform.Translate(20, 20);
9344 host_impl_->SetExternalTilePriorityConstraints(external_viewport, 9338 host_impl_->SetExternalTilePriorityConstraints(external_viewport,
9345 external_transform); 9339 external_transform);
9346 host_impl_->OnDraw(external_transform, external_viewport, external_clip, 9340 host_impl_->OnDraw(external_transform, external_viewport,
9347 resourceless_software_draw); 9341 resourceless_software_draw);
9348 EXPECT_TRANSFORMATION_MATRIX_EQ( 9342 EXPECT_TRANSFORMATION_MATRIX_EQ(
9349 external_transform, layer->draw_properties().target_space_transform); 9343 external_transform, layer->draw_properties().target_space_transform);
9350 } 9344 }
9351 9345
9352 TEST_F(LayerTreeHostImplTest, ExternalTransformSetNeedsRedraw) { 9346 TEST_F(LayerTreeHostImplTest, ExternalTransformSetNeedsRedraw) {
9353 SetupRootLayerImpl(LayerImpl::Create(host_impl_->active_tree(), 1)); 9347 SetupRootLayerImpl(LayerImpl::Create(host_impl_->active_tree(), 1));
9354 host_impl_->active_tree()->BuildPropertyTreesForTesting(); 9348 host_impl_->active_tree()->BuildPropertyTreesForTesting();
9355 9349
9356 const gfx::Size viewport_size(100, 100); 9350 const gfx::Size viewport_size(100, 100);
9357 host_impl_->SetViewportSize(viewport_size); 9351 host_impl_->SetViewportSize(viewport_size);
9358 9352
9359 const gfx::Transform transform_for_tile_priority; 9353 const gfx::Transform transform_for_tile_priority;
9360 const gfx::Transform draw_transform; 9354 const gfx::Transform draw_transform;
9361 const gfx::Rect viewport_for_tile_priority1(viewport_size); 9355 const gfx::Rect viewport_for_tile_priority1(viewport_size);
9362 const gfx::Rect viewport_for_tile_priority2(50, 50); 9356 const gfx::Rect viewport_for_tile_priority2(50, 50);
9363 const gfx::Rect draw_viewport(viewport_size); 9357 const gfx::Rect draw_viewport(viewport_size);
9364 const gfx::Rect clip(viewport_size);
9365 bool resourceless_software_draw = false; 9358 bool resourceless_software_draw = false;
9366 9359
9367 // Clear any damage. 9360 // Clear any damage.
9368 host_impl_->SetExternalTilePriorityConstraints(viewport_for_tile_priority1, 9361 host_impl_->SetExternalTilePriorityConstraints(viewport_for_tile_priority1,
9369 transform_for_tile_priority); 9362 transform_for_tile_priority);
9370 host_impl_->OnDraw(draw_transform, draw_viewport, clip, 9363 host_impl_->OnDraw(draw_transform, draw_viewport, resourceless_software_draw);
9371 resourceless_software_draw);
9372 last_on_draw_frame_.reset(); 9364 last_on_draw_frame_.reset();
9373 9365
9374 // Setting new constraints needs redraw. 9366 // Setting new constraints needs redraw.
9375 did_request_redraw_ = false; 9367 did_request_redraw_ = false;
9376 host_impl_->SetExternalTilePriorityConstraints(viewport_for_tile_priority2, 9368 host_impl_->SetExternalTilePriorityConstraints(viewport_for_tile_priority2,
9377 transform_for_tile_priority); 9369 transform_for_tile_priority);
9378 EXPECT_TRUE(did_request_redraw_); 9370 EXPECT_TRUE(did_request_redraw_);
9379 host_impl_->OnDraw(draw_transform, draw_viewport, clip, 9371 host_impl_->OnDraw(draw_transform, draw_viewport, resourceless_software_draw);
9380 resourceless_software_draw);
9381 EXPECT_FALSE(last_on_draw_frame_->has_no_damage); 9372 EXPECT_FALSE(last_on_draw_frame_->has_no_damage);
9382 } 9373 }
9383 9374
9384 TEST_F(LayerTreeHostImplTest, OnDrawConstraintSetNeedsRedraw) { 9375 TEST_F(LayerTreeHostImplTest, OnDrawConstraintSetNeedsRedraw) {
9385 SetupRootLayerImpl(LayerImpl::Create(host_impl_->active_tree(), 1)); 9376 SetupRootLayerImpl(LayerImpl::Create(host_impl_->active_tree(), 1));
9386 host_impl_->active_tree()->BuildPropertyTreesForTesting(); 9377 host_impl_->active_tree()->BuildPropertyTreesForTesting();
9387 9378
9388 const gfx::Size viewport_size(100, 100); 9379 const gfx::Size viewport_size(100, 100);
9389 host_impl_->SetViewportSize(viewport_size); 9380 host_impl_->SetViewportSize(viewport_size);
9390 9381
9391 const gfx::Transform draw_transform; 9382 const gfx::Transform draw_transform;
9392 const gfx::Rect draw_viewport1(viewport_size); 9383 const gfx::Rect draw_viewport1(viewport_size);
9393 const gfx::Rect draw_viewport2(50, 50); 9384 const gfx::Rect draw_viewport2(50, 50);
9394 const gfx::Rect clip(viewport_size);
9395 bool resourceless_software_draw = false; 9385 bool resourceless_software_draw = false;
9396 9386
9397 // Clear any damage. 9387 // Clear any damage.
9398 host_impl_->OnDraw(draw_transform, draw_viewport1, clip, 9388 host_impl_->OnDraw(draw_transform, draw_viewport1,
9399 resourceless_software_draw); 9389 resourceless_software_draw);
9400 last_on_draw_frame_.reset(); 9390 last_on_draw_frame_.reset();
9401 9391
9402 // Same draw params does not swap. 9392 // Same draw params does not swap.
9403 did_request_redraw_ = false; 9393 did_request_redraw_ = false;
9404 host_impl_->OnDraw(draw_transform, draw_viewport1, clip, 9394 host_impl_->OnDraw(draw_transform, draw_viewport1,
9405 resourceless_software_draw); 9395 resourceless_software_draw);
9406 EXPECT_FALSE(did_request_redraw_); 9396 EXPECT_FALSE(did_request_redraw_);
9407 EXPECT_TRUE(last_on_draw_frame_->has_no_damage); 9397 EXPECT_TRUE(last_on_draw_frame_->has_no_damage);
9408 last_on_draw_frame_.reset(); 9398 last_on_draw_frame_.reset();
9409 9399
9410 // Different draw params does swap. 9400 // Different draw params does swap.
9411 did_request_redraw_ = false; 9401 did_request_redraw_ = false;
9412 host_impl_->OnDraw(draw_transform, draw_viewport2, clip, 9402 host_impl_->OnDraw(draw_transform, draw_viewport2,
9413 resourceless_software_draw); 9403 resourceless_software_draw);
9414 EXPECT_TRUE(did_request_redraw_); 9404 EXPECT_TRUE(did_request_redraw_);
9415 EXPECT_FALSE(last_on_draw_frame_->has_no_damage); 9405 EXPECT_FALSE(last_on_draw_frame_->has_no_damage);
9416 } 9406 }
9417 9407
9418 class ResourcelessSoftwareLayerTreeHostImplTest : public LayerTreeHostImplTest { 9408 class ResourcelessSoftwareLayerTreeHostImplTest : public LayerTreeHostImplTest {
9419 protected: 9409 protected:
9420 std::unique_ptr<OutputSurface> CreateOutputSurface() override { 9410 std::unique_ptr<OutputSurface> CreateOutputSurface() override {
9421 return FakeOutputSurface::CreateDelegating3d(); 9411 return FakeOutputSurface::CreateDelegating3d();
9422 } 9412 }
9423 }; 9413 };
9424 9414
9425 TEST_F(ResourcelessSoftwareLayerTreeHostImplTest, 9415 TEST_F(ResourcelessSoftwareLayerTreeHostImplTest,
9426 ResourcelessSoftwareSetNeedsRedraw) { 9416 ResourcelessSoftwareSetNeedsRedraw) {
9427 SetupRootLayerImpl(LayerImpl::Create(host_impl_->active_tree(), 1)); 9417 SetupRootLayerImpl(LayerImpl::Create(host_impl_->active_tree(), 1));
9428 host_impl_->active_tree()->BuildPropertyTreesForTesting(); 9418 host_impl_->active_tree()->BuildPropertyTreesForTesting();
9429 9419
9430 const gfx::Size viewport_size(100, 100); 9420 const gfx::Size viewport_size(100, 100);
9431 host_impl_->SetViewportSize(viewport_size); 9421 host_impl_->SetViewportSize(viewport_size);
9432 9422
9433 const gfx::Transform draw_transform; 9423 const gfx::Transform draw_transform;
9434 const gfx::Rect draw_viewport(viewport_size); 9424 const gfx::Rect draw_viewport(viewport_size);
9435 const gfx::Rect clip(viewport_size);
9436 bool resourceless_software_draw = false; 9425 bool resourceless_software_draw = false;
9437 9426
9438 // Clear any damage. 9427 // Clear any damage.
9439 host_impl_->OnDraw(draw_transform, draw_viewport, clip, 9428 host_impl_->OnDraw(draw_transform, draw_viewport, resourceless_software_draw);
9440 resourceless_software_draw);
9441 last_on_draw_frame_.reset(); 9429 last_on_draw_frame_.reset();
9442 9430
9443 // Always swap even if same draw params. 9431 // Always swap even if same draw params.
9444 resourceless_software_draw = true; 9432 resourceless_software_draw = true;
9445 host_impl_->OnDraw(draw_transform, draw_viewport, clip, 9433 host_impl_->OnDraw(draw_transform, draw_viewport, resourceless_software_draw);
9446 resourceless_software_draw);
9447 EXPECT_FALSE(last_on_draw_frame_->has_no_damage); 9434 EXPECT_FALSE(last_on_draw_frame_->has_no_damage);
9448 last_on_draw_frame_.reset(); 9435 last_on_draw_frame_.reset();
9449 9436
9450 // Next hardware draw has damage. 9437 // Next hardware draw has damage.
9451 resourceless_software_draw = false; 9438 resourceless_software_draw = false;
9452 host_impl_->OnDraw(draw_transform, draw_viewport, clip, 9439 host_impl_->OnDraw(draw_transform, draw_viewport, resourceless_software_draw);
9453 resourceless_software_draw);
9454 EXPECT_FALSE(last_on_draw_frame_->has_no_damage); 9440 EXPECT_FALSE(last_on_draw_frame_->has_no_damage);
9455 } 9441 }
9456 9442
9457 TEST_F(ResourcelessSoftwareLayerTreeHostImplTest, 9443 TEST_F(ResourcelessSoftwareLayerTreeHostImplTest,
9458 ResourcelessSoftwareDrawSkipsUpdateTiles) { 9444 ResourcelessSoftwareDrawSkipsUpdateTiles) {
9459 const gfx::Size viewport_size(100, 100); 9445 const gfx::Size viewport_size(100, 100);
9460 host_impl_->SetViewportSize(viewport_size); 9446 host_impl_->SetViewportSize(viewport_size);
9461 9447
9462 host_impl_->CreatePendingTree(); 9448 host_impl_->CreatePendingTree();
9463 scoped_refptr<FakeRasterSource> raster_source( 9449 scoped_refptr<FakeRasterSource> raster_source(
9464 FakeRasterSource::CreateFilled(viewport_size)); 9450 FakeRasterSource::CreateFilled(viewport_size));
9465 std::unique_ptr<FakePictureLayerImpl> layer( 9451 std::unique_ptr<FakePictureLayerImpl> layer(
9466 FakePictureLayerImpl::CreateWithRasterSource(host_impl_->pending_tree(), 9452 FakePictureLayerImpl::CreateWithRasterSource(host_impl_->pending_tree(),
9467 11, raster_source)); 9453 11, raster_source));
9468 layer->SetBounds(viewport_size); 9454 layer->SetBounds(viewport_size);
9469 layer->SetDrawsContent(true); 9455 layer->SetDrawsContent(true);
9470 host_impl_->pending_tree()->SetRootLayerForTesting(std::move(layer)); 9456 host_impl_->pending_tree()->SetRootLayerForTesting(std::move(layer));
9471 9457
9472 host_impl_->pending_tree()->BuildPropertyTreesForTesting(); 9458 host_impl_->pending_tree()->BuildPropertyTreesForTesting();
9473 host_impl_->ActivateSyncTree(); 9459 host_impl_->ActivateSyncTree();
9474 9460
9475 const gfx::Transform draw_transform; 9461 const gfx::Transform draw_transform;
9476 const gfx::Rect draw_viewport(viewport_size); 9462 const gfx::Rect draw_viewport(viewport_size);
9477 const gfx::Rect clip(viewport_size);
9478 bool resourceless_software_draw = false; 9463 bool resourceless_software_draw = false;
9479 9464
9480 // Regular draw causes UpdateTiles. 9465 // Regular draw causes UpdateTiles.
9481 did_request_prepare_tiles_ = false; 9466 did_request_prepare_tiles_ = false;
9482 host_impl_->OnDraw(draw_transform, draw_viewport, clip, 9467 host_impl_->OnDraw(draw_transform, draw_viewport, resourceless_software_draw);
9483 resourceless_software_draw);
9484 EXPECT_TRUE(did_request_prepare_tiles_); 9468 EXPECT_TRUE(did_request_prepare_tiles_);
9485 host_impl_->PrepareTiles(); 9469 host_impl_->PrepareTiles();
9486 9470
9487 // Resourceless draw skips UpdateTiles. 9471 // Resourceless draw skips UpdateTiles.
9488 const gfx::Rect new_draw_viewport(50, 50); 9472 const gfx::Rect new_draw_viewport(50, 50);
9489 resourceless_software_draw = true; 9473 resourceless_software_draw = true;
9490 did_request_prepare_tiles_ = false; 9474 did_request_prepare_tiles_ = false;
9491 host_impl_->OnDraw(draw_transform, new_draw_viewport, clip, 9475 host_impl_->OnDraw(draw_transform, new_draw_viewport,
9492 resourceless_software_draw); 9476 resourceless_software_draw);
9493 EXPECT_FALSE(did_request_prepare_tiles_); 9477 EXPECT_FALSE(did_request_prepare_tiles_);
9494 } 9478 }
9495 9479
9496 TEST_F(LayerTreeHostImplTest, ExternalTileConstraintReflectedInPendingTree) { 9480 TEST_F(LayerTreeHostImplTest, ExternalTileConstraintReflectedInPendingTree) {
9497 EXPECT_FALSE(host_impl_->CommitToActiveTree()); 9481 EXPECT_FALSE(host_impl_->CommitToActiveTree());
9498 const gfx::Size layer_size(100, 100); 9482 const gfx::Size layer_size(100, 100);
9499 host_impl_->SetViewportSize(layer_size); 9483 host_impl_->SetViewportSize(layer_size);
9500 bool update_lcd_text = false; 9484 bool update_lcd_text = false;
9501 9485
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after
9536 ->children[0]; 9520 ->children[0];
9537 9521
9538 bool update_lcd_text = false; 9522 bool update_lcd_text = false;
9539 9523
9540 host_impl_->SetViewportSize(gfx::Size(90, 90)); 9524 host_impl_->SetViewportSize(gfx::Size(90, 90));
9541 host_impl_->active_tree()->UpdateDrawProperties(update_lcd_text); 9525 host_impl_->active_tree()->UpdateDrawProperties(update_lcd_text);
9542 EXPECT_EQ(gfx::Rect(90, 90), content_layer->visible_layer_rect()); 9526 EXPECT_EQ(gfx::Rect(90, 90), content_layer->visible_layer_rect());
9543 9527
9544 gfx::Transform external_transform; 9528 gfx::Transform external_transform;
9545 gfx::Rect external_viewport(10, 20); 9529 gfx::Rect external_viewport(10, 20);
9546 gfx::Rect external_clip(layer_size);
9547 bool resourceless_software_draw = false; 9530 bool resourceless_software_draw = false;
9548 host_impl_->SetExternalTilePriorityConstraints(external_viewport, 9531 host_impl_->SetExternalTilePriorityConstraints(external_viewport,
9549 external_transform); 9532 external_transform);
9550 host_impl_->OnDraw(external_transform, external_viewport, external_clip, 9533 host_impl_->OnDraw(external_transform, external_viewport,
9551 resourceless_software_draw); 9534 resourceless_software_draw);
9552 EXPECT_EQ(gfx::Rect(10, 20), content_layer->visible_layer_rect()); 9535 EXPECT_EQ(gfx::Rect(10, 20), content_layer->visible_layer_rect());
9553 9536
9554 // Clear the external viewport. 9537 // Clear the external viewport.
9555 external_viewport = gfx::Rect(); 9538 external_viewport = gfx::Rect();
9556 host_impl_->SetExternalTilePriorityConstraints(external_viewport, 9539 host_impl_->SetExternalTilePriorityConstraints(external_viewport,
9557 external_transform); 9540 external_transform);
9558 9541
9559 host_impl_->OnDraw(external_transform, external_viewport, external_clip, 9542 host_impl_->OnDraw(external_transform, external_viewport,
9560 resourceless_software_draw); 9543 resourceless_software_draw);
9561 EXPECT_EQ(gfx::Rect(90, 90), content_layer->visible_layer_rect()); 9544 EXPECT_EQ(gfx::Rect(90, 90), content_layer->visible_layer_rect());
9562 } 9545 }
9563 9546
9564 TEST_F(LayerTreeHostImplTest, ExternalTransformAffectsVisibleRects) { 9547 TEST_F(LayerTreeHostImplTest, ExternalTransformAffectsVisibleRects) {
9565 const gfx::Size layer_size(100, 100); 9548 const gfx::Size layer_size(100, 100);
9566 SetupScrollAndContentsLayers(layer_size); 9549 SetupScrollAndContentsLayers(layer_size);
9567 LayerImpl* content_layer = host_impl_->active_tree() 9550 LayerImpl* content_layer = host_impl_->active_tree()
9568 ->OuterViewportScrollLayer() 9551 ->OuterViewportScrollLayer()
9569 ->test_properties() 9552 ->test_properties()
9570 ->children[0]; 9553 ->children[0];
9571 9554
9572 bool update_lcd_text = false; 9555 bool update_lcd_text = false;
9573 9556
9574 host_impl_->SetViewportSize(gfx::Size(50, 50)); 9557 host_impl_->SetViewportSize(gfx::Size(50, 50));
9575 host_impl_->active_tree()->UpdateDrawProperties(update_lcd_text); 9558 host_impl_->active_tree()->UpdateDrawProperties(update_lcd_text);
9576 EXPECT_EQ(gfx::Rect(50, 50), content_layer->visible_layer_rect()); 9559 EXPECT_EQ(gfx::Rect(50, 50), content_layer->visible_layer_rect());
9577 9560
9578 gfx::Transform external_transform; 9561 gfx::Transform external_transform;
9579 external_transform.Translate(10, 10); 9562 external_transform.Translate(10, 10);
9580 external_transform.Scale(2, 2); 9563 external_transform.Scale(2, 2);
9581 gfx::Rect external_viewport; 9564 gfx::Rect external_viewport;
9582 gfx::Rect external_clip(layer_size);
9583 bool resourceless_software_draw = false; 9565 bool resourceless_software_draw = false;
9584 host_impl_->SetExternalTilePriorityConstraints(external_viewport, 9566 host_impl_->SetExternalTilePriorityConstraints(external_viewport,
9585 external_transform); 9567 external_transform);
9586 9568
9587 // Visible rects should now be shifted and scaled because of the external 9569 // Visible rects should now be shifted and scaled because of the external
9588 // transform. 9570 // transform.
9589 host_impl_->OnDraw(external_transform, external_viewport, external_clip, 9571 host_impl_->OnDraw(external_transform, external_viewport,
9590 resourceless_software_draw); 9572 resourceless_software_draw);
9591 EXPECT_EQ(gfx::Rect(20, 20), content_layer->visible_layer_rect()); 9573 EXPECT_EQ(gfx::Rect(20, 20), content_layer->visible_layer_rect());
9592 9574
9593 // Clear the external transform. 9575 // Clear the external transform.
9594 external_transform = gfx::Transform(); 9576 external_transform = gfx::Transform();
9595 host_impl_->SetExternalTilePriorityConstraints(external_viewport, 9577 host_impl_->SetExternalTilePriorityConstraints(external_viewport,
9596 external_transform); 9578 external_transform);
9597 9579
9598 host_impl_->OnDraw(external_transform, external_viewport, external_clip, 9580 host_impl_->OnDraw(external_transform, external_viewport,
9599 resourceless_software_draw); 9581 resourceless_software_draw);
9600 EXPECT_EQ(gfx::Rect(50, 50), content_layer->visible_layer_rect()); 9582 EXPECT_EQ(gfx::Rect(50, 50), content_layer->visible_layer_rect());
9601 } 9583 }
9602 9584
9603 TEST_F(LayerTreeHostImplTest, ExternalTransformAffectsSublayerScaleFactor) { 9585 TEST_F(LayerTreeHostImplTest, ExternalTransformAffectsSublayerScaleFactor) {
9604 const gfx::Size layer_size(100, 100); 9586 const gfx::Size layer_size(100, 100);
9605 SetupScrollAndContentsLayers(layer_size); 9587 SetupScrollAndContentsLayers(layer_size);
9606 LayerImpl* content_layer = host_impl_->active_tree() 9588 LayerImpl* content_layer = host_impl_->active_tree()
9607 ->OuterViewportScrollLayer() 9589 ->OuterViewportScrollLayer()
9608 ->test_properties() 9590 ->test_properties()
(...skipping 15 matching lines...) Expand all
9624 host_impl_->active_tree()->UpdateDrawProperties(update_lcd_text); 9606 host_impl_->active_tree()->UpdateDrawProperties(update_lcd_text);
9625 TransformNode* node = 9607 TransformNode* node =
9626 host_impl_->active_tree()->property_trees()->transform_tree.Node( 9608 host_impl_->active_tree()->property_trees()->transform_tree.Node(
9627 test_layer->transform_tree_index()); 9609 test_layer->transform_tree_index());
9628 EXPECT_EQ(node->surface_contents_scale, gfx::Vector2dF(1.f, 1.f)); 9610 EXPECT_EQ(node->surface_contents_scale, gfx::Vector2dF(1.f, 1.f));
9629 9611
9630 gfx::Transform external_transform; 9612 gfx::Transform external_transform;
9631 external_transform.Translate(10, 10); 9613 external_transform.Translate(10, 10);
9632 external_transform.Scale(2, 2); 9614 external_transform.Scale(2, 2);
9633 gfx::Rect external_viewport; 9615 gfx::Rect external_viewport;
9634 gfx::Rect external_clip(layer_size);
9635 bool resourceless_software_draw = false; 9616 bool resourceless_software_draw = false;
9636 host_impl_->SetExternalTilePriorityConstraints(external_viewport, 9617 host_impl_->SetExternalTilePriorityConstraints(external_viewport,
9637 external_transform); 9618 external_transform);
9638 9619
9639 // Transform node's sublayer scale should include the device transform scale. 9620 // Transform node's sublayer scale should include the device transform scale.
9640 host_impl_->OnDraw(external_transform, external_viewport, external_clip, 9621 host_impl_->OnDraw(external_transform, external_viewport,
9641 resourceless_software_draw); 9622 resourceless_software_draw);
9642 node = host_impl_->active_tree()->property_trees()->transform_tree.Node( 9623 node = host_impl_->active_tree()->property_trees()->transform_tree.Node(
9643 test_layer->transform_tree_index()); 9624 test_layer->transform_tree_index());
9644 EXPECT_EQ(node->surface_contents_scale, gfx::Vector2dF(2.f, 2.f)); 9625 EXPECT_EQ(node->surface_contents_scale, gfx::Vector2dF(2.f, 2.f));
9645 9626
9646 // Clear the external transform. 9627 // Clear the external transform.
9647 external_transform = gfx::Transform(); 9628 external_transform = gfx::Transform();
9648 host_impl_->SetExternalTilePriorityConstraints(external_viewport, 9629 host_impl_->SetExternalTilePriorityConstraints(external_viewport,
9649 external_transform); 9630 external_transform);
9650 9631
9651 host_impl_->OnDraw(external_transform, external_viewport, external_clip, 9632 host_impl_->OnDraw(external_transform, external_viewport,
9652 resourceless_software_draw); 9633 resourceless_software_draw);
9653 node = host_impl_->active_tree()->property_trees()->transform_tree.Node( 9634 node = host_impl_->active_tree()->property_trees()->transform_tree.Node(
9654 test_layer->transform_tree_index()); 9635 test_layer->transform_tree_index());
9655 EXPECT_EQ(node->surface_contents_scale, gfx::Vector2dF(1.f, 1.f)); 9636 EXPECT_EQ(node->surface_contents_scale, gfx::Vector2dF(1.f, 1.f));
9656 } 9637 }
9657 9638
9658 TEST_F(LayerTreeHostImplTest, ScrollAnimated) { 9639 TEST_F(LayerTreeHostImplTest, ScrollAnimated) {
9659 const gfx::Size content_size(1000, 1000); 9640 const gfx::Size content_size(1000, 1000);
9660 const gfx::Size viewport_size(50, 100); 9641 const gfx::Size viewport_size(50, 100);
9661 CreateBasicVirtualViewportLayers(viewport_size, content_size); 9642 CreateBasicVirtualViewportLayers(viewport_size, content_size);
(...skipping 1155 matching lines...) Expand 10 before | Expand all | Expand 10 after
10817 EXPECT_TRUE(host_impl_->use_gpu_rasterization()); 10798 EXPECT_TRUE(host_impl_->use_gpu_rasterization());
10818 10799
10819 // Re-initialize with a software output surface. 10800 // Re-initialize with a software output surface.
10820 output_surface_ = FakeOutputSurface::CreateDelegatingSoftware(); 10801 output_surface_ = FakeOutputSurface::CreateDelegatingSoftware();
10821 host_impl_->InitializeRenderer(output_surface_.get()); 10802 host_impl_->InitializeRenderer(output_surface_.get());
10822 EXPECT_FALSE(host_impl_->use_gpu_rasterization()); 10803 EXPECT_FALSE(host_impl_->use_gpu_rasterization());
10823 } 10804 }
10824 10805
10825 } // namespace 10806 } // namespace
10826 } // namespace cc 10807 } // namespace cc
OLDNEW
« no previous file with comments | « cc/trees/layer_tree_host_impl.cc ('k') | cc/trees/layer_tree_host_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698