| OLD | NEW |
| 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.h" | 5 #include "cc/trees/layer_tree_host.h" |
| 6 | 6 |
| 7 #include <stddef.h> | 7 #include <stddef.h> |
| 8 #include <stdint.h> | 8 #include <stdint.h> |
| 9 | 9 |
| 10 #include <algorithm> | 10 #include <algorithm> |
| (...skipping 4705 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 4716 page_scale_layer->AddChild(inner_viewport_scroll_layer); | 4716 page_scale_layer->AddChild(inner_viewport_scroll_layer); |
| 4717 | 4717 |
| 4718 scoped_refptr<Layer> content_layer = FakePictureLayer::Create(&client_); | 4718 scoped_refptr<Layer> content_layer = FakePictureLayer::Create(&client_); |
| 4719 content_layer_id_ = content_layer->id(); | 4719 content_layer_id_ = content_layer->id(); |
| 4720 content_layer->SetBounds(gfx::Size(10, 10)); | 4720 content_layer->SetBounds(gfx::Size(10, 10)); |
| 4721 inner_viewport_scroll_layer->AddChild(content_layer); | 4721 inner_viewport_scroll_layer->AddChild(content_layer); |
| 4722 | 4722 |
| 4723 layer_tree_host()->SetRootLayer(root_layer_); | 4723 layer_tree_host()->SetRootLayer(root_layer_); |
| 4724 layer_tree_host()->RegisterViewportLayers( | 4724 layer_tree_host()->RegisterViewportLayers( |
| 4725 overscroll_elasticity_layer, page_scale_layer, | 4725 overscroll_elasticity_layer, page_scale_layer, |
| 4726 inner_viewport_scroll_layer, nullptr); | 4726 inner_viewport_container_layer, nullptr, inner_viewport_scroll_layer, |
| 4727 nullptr); |
| 4727 LayerTreeHostTest::SetupTree(); | 4728 LayerTreeHostTest::SetupTree(); |
| 4728 client_.set_bounds(content_layer->bounds()); | 4729 client_.set_bounds(content_layer->bounds()); |
| 4729 } | 4730 } |
| 4730 | 4731 |
| 4731 void BeginTest() override { PostSetNeedsCommitToMainThread(); } | 4732 void BeginTest() override { PostSetNeedsCommitToMainThread(); } |
| 4732 | 4733 |
| 4733 void CommitCompleteOnThread(LayerTreeHostImpl* host_impl) override { | 4734 void CommitCompleteOnThread(LayerTreeHostImpl* host_impl) override { |
| 4734 if (host_impl->sync_tree()->source_frame_number() == 0) { | 4735 if (host_impl->sync_tree()->source_frame_number() == 0) { |
| 4735 scroll_elasticity_helper_ = host_impl->CreateScrollElasticityHelper(); | 4736 scroll_elasticity_helper_ = host_impl->CreateScrollElasticityHelper(); |
| 4736 } | 4737 } |
| (...skipping 1383 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 6120 recording->SetPlaybackAllowedEvent(&playback_allowed_event_); | 6121 recording->SetPlaybackAllowedEvent(&playback_allowed_event_); |
| 6121 scoped_refptr<FakePictureLayer> layer = | 6122 scoped_refptr<FakePictureLayer> layer = |
| 6122 FakePictureLayer::CreateWithRecordingSource(&client_, | 6123 FakePictureLayer::CreateWithRecordingSource(&client_, |
| 6123 std::move(recording)); | 6124 std::move(recording)); |
| 6124 layer->SetBounds(gfx::Size(500, 500)); | 6125 layer->SetBounds(gfx::Size(500, 500)); |
| 6125 layer->SetContentsOpaque(true); | 6126 layer->SetContentsOpaque(true); |
| 6126 // Avoid LCD text on the layer so we don't cause extra commits when we | 6127 // Avoid LCD text on the layer so we don't cause extra commits when we |
| 6127 // pinch. | 6128 // pinch. |
| 6128 pinch->AddChild(layer); | 6129 pinch->AddChild(layer); |
| 6129 | 6130 |
| 6130 layer_tree_host()->RegisterViewportLayers(NULL, page_scale_layer, pinch, | 6131 layer_tree_host()->RegisterViewportLayers(NULL, page_scale_layer, root_clip, |
| 6131 nullptr); | 6132 nullptr, pinch, nullptr); |
| 6132 layer_tree_host()->SetPageScaleFactorAndLimits(1.f, 1.f, 4.f); | 6133 layer_tree_host()->SetPageScaleFactorAndLimits(1.f, 1.f, 4.f); |
| 6133 layer_tree_host()->SetRootLayer(root_clip); | 6134 layer_tree_host()->SetRootLayer(root_clip); |
| 6134 LayerTreeHostTest::SetupTree(); | 6135 LayerTreeHostTest::SetupTree(); |
| 6135 client_.set_bounds(root_clip->bounds()); | 6136 client_.set_bounds(root_clip->bounds()); |
| 6136 } | 6137 } |
| 6137 | 6138 |
| 6138 // Returns the delta scale of all quads in the frame's root pass from their | 6139 // Returns the delta scale of all quads in the frame's root pass from their |
| 6139 // ideal, or 0 if they are not all the same. | 6140 // ideal, or 0 if they are not all the same. |
| 6140 float FrameQuadScaleDeltaFromIdeal(LayerTreeHostImpl::FrameData* frame_data) { | 6141 float FrameQuadScaleDeltaFromIdeal(LayerTreeHostImpl::FrameData* frame_data) { |
| 6141 if (frame_data->has_no_damage) | 6142 if (frame_data->has_no_damage) |
| (...skipping 282 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 6424 recording->SetPlaybackAllowedEvent(&playback_allowed_event_); | 6425 recording->SetPlaybackAllowedEvent(&playback_allowed_event_); |
| 6425 scoped_refptr<FakePictureLayer> layer = | 6426 scoped_refptr<FakePictureLayer> layer = |
| 6426 FakePictureLayer::CreateWithRecordingSource(&client_, | 6427 FakePictureLayer::CreateWithRecordingSource(&client_, |
| 6427 std::move(recording)); | 6428 std::move(recording)); |
| 6428 layer->SetBounds(gfx::Size(500, 500)); | 6429 layer->SetBounds(gfx::Size(500, 500)); |
| 6429 layer->SetContentsOpaque(true); | 6430 layer->SetContentsOpaque(true); |
| 6430 // Avoid LCD text on the layer so we don't cause extra commits when we | 6431 // Avoid LCD text on the layer so we don't cause extra commits when we |
| 6431 // pinch. | 6432 // pinch. |
| 6432 pinch->AddChild(layer); | 6433 pinch->AddChild(layer); |
| 6433 | 6434 |
| 6434 layer_tree_host()->RegisterViewportLayers(NULL, page_scale_layer, pinch, | 6435 layer_tree_host()->RegisterViewportLayers(NULL, page_scale_layer, root_clip, |
| 6435 nullptr); | 6436 nullptr, pinch, nullptr); |
| 6436 layer_tree_host()->SetPageScaleFactorAndLimits(1.f, 1.f, 4.f); | 6437 layer_tree_host()->SetPageScaleFactorAndLimits(1.f, 1.f, 4.f); |
| 6437 layer_tree_host()->SetRootLayer(root_clip); | 6438 layer_tree_host()->SetRootLayer(root_clip); |
| 6438 LayerTreeHostTest::SetupTree(); | 6439 LayerTreeHostTest::SetupTree(); |
| 6439 client_.set_bounds(root_clip->bounds()); | 6440 client_.set_bounds(root_clip->bounds()); |
| 6440 } | 6441 } |
| 6441 | 6442 |
| 6442 // Returns the delta scale of all quads in the frame's root pass from their | 6443 // Returns the delta scale of all quads in the frame's root pass from their |
| 6443 // ideal, or 0 if they are not all the same. | 6444 // ideal, or 0 if they are not all the same. |
| 6444 float FrameQuadScaleDeltaFromIdeal(LayerTreeHostImpl::FrameData* frame_data) { | 6445 float FrameQuadScaleDeltaFromIdeal(LayerTreeHostImpl::FrameData* frame_data) { |
| 6445 if (frame_data->has_no_damage) | 6446 if (frame_data->has_no_damage) |
| (...skipping 939 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 7385 root->AddChild(post_page_scale); | 7386 root->AddChild(post_page_scale); |
| 7386 | 7387 |
| 7387 page_scale->AddChild(page_scale_child1); | 7388 page_scale->AddChild(page_scale_child1); |
| 7388 page_scale->AddChild(page_scale_child2); | 7389 page_scale->AddChild(page_scale_child2); |
| 7389 page_scale_child1->AddChild(page_scale_grandchild); | 7390 page_scale_child1->AddChild(page_scale_grandchild); |
| 7390 | 7391 |
| 7391 layer_tree_host()->SetRootLayer(root); | 7392 layer_tree_host()->SetRootLayer(root); |
| 7392 LayerTreeTest::SetupTree(); | 7393 LayerTreeTest::SetupTree(); |
| 7393 | 7394 |
| 7394 scoped_refptr<Layer> overscroll_elasticity_layer = nullptr; | 7395 scoped_refptr<Layer> overscroll_elasticity_layer = nullptr; |
| 7396 scoped_refptr<Layer> inner_viewport_container_layer = nullptr; |
| 7397 scoped_refptr<Layer> outer_viewport_container_layer = nullptr; |
| 7395 scoped_refptr<Layer> inner_viewport_scroll_layer = nullptr; | 7398 scoped_refptr<Layer> inner_viewport_scroll_layer = nullptr; |
| 7396 scoped_refptr<Layer> outer_viewport_scroll_layer = nullptr; | 7399 scoped_refptr<Layer> outer_viewport_scroll_layer = nullptr; |
| 7397 layer_tree_host()->RegisterViewportLayers( | 7400 layer_tree_host()->RegisterViewportLayers( |
| 7398 overscroll_elasticity_layer, page_scale, inner_viewport_scroll_layer, | 7401 overscroll_elasticity_layer, page_scale, inner_viewport_container_layer, |
| 7402 outer_viewport_container_layer, inner_viewport_scroll_layer, |
| 7399 outer_viewport_scroll_layer); | 7403 outer_viewport_scroll_layer); |
| 7400 | 7404 |
| 7401 affected_by_page_scale_.push_back(page_scale->id()); | 7405 affected_by_page_scale_.push_back(page_scale->id()); |
| 7402 affected_by_page_scale_.push_back(page_scale_child1->id()); | 7406 affected_by_page_scale_.push_back(page_scale_child1->id()); |
| 7403 affected_by_page_scale_.push_back(page_scale_child2->id()); | 7407 affected_by_page_scale_.push_back(page_scale_child2->id()); |
| 7404 affected_by_page_scale_.push_back(page_scale_grandchild->id()); | 7408 affected_by_page_scale_.push_back(page_scale_grandchild->id()); |
| 7405 | 7409 |
| 7406 not_affected_by_page_scale_.push_back(root->id()); | 7410 not_affected_by_page_scale_.push_back(root->id()); |
| 7407 not_affected_by_page_scale_.push_back(pre_page_scale->id()); | 7411 not_affected_by_page_scale_.push_back(pre_page_scale->id()); |
| 7408 not_affected_by_page_scale_.push_back(post_page_scale->id()); | 7412 not_affected_by_page_scale_.push_back(post_page_scale->id()); |
| (...skipping 548 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 7957 void AfterTest() override {} | 7961 void AfterTest() override {} |
| 7958 | 7962 |
| 7959 private: | 7963 private: |
| 7960 bool received_ack_ = false; | 7964 bool received_ack_ = false; |
| 7961 }; | 7965 }; |
| 7962 | 7966 |
| 7963 SINGLE_AND_MULTI_THREAD_TEST_F(LayerTreeHostTestDiscardAckAfterRelease); | 7967 SINGLE_AND_MULTI_THREAD_TEST_F(LayerTreeHostTestDiscardAckAfterRelease); |
| 7964 | 7968 |
| 7965 } // namespace | 7969 } // namespace |
| 7966 } // namespace cc | 7970 } // namespace cc |
| OLD | NEW |