| 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_impl.h" | 5 #include "cc/trees/layer_tree_impl.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 67 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 78 layers_(new OwnedLayerImplList), | 78 layers_(new OwnedLayerImplList), |
| 79 viewport_size_invalid_(false), | 79 viewport_size_invalid_(false), |
| 80 needs_update_draw_properties_(true), | 80 needs_update_draw_properties_(true), |
| 81 needs_full_tree_sync_(true), | 81 needs_full_tree_sync_(true), |
| 82 next_activation_forces_redraw_(false), | 82 next_activation_forces_redraw_(false), |
| 83 has_ever_been_drawn_(false), | 83 has_ever_been_drawn_(false), |
| 84 have_scroll_event_handlers_(false), | 84 have_scroll_event_handlers_(false), |
| 85 event_listener_properties_(), | 85 event_listener_properties_(), |
| 86 top_controls_shrink_blink_size_(false), | 86 top_controls_shrink_blink_size_(false), |
| 87 top_controls_height_(0), | 87 top_controls_height_(0), |
| 88 bottom_controls_height_(0), |
| 88 top_controls_shown_ratio_(top_controls_shown_ratio) { | 89 top_controls_shown_ratio_(top_controls_shown_ratio) { |
| 89 property_trees()->is_main_thread = false; | 90 property_trees()->is_main_thread = false; |
| 90 } | 91 } |
| 91 | 92 |
| 92 LayerTreeImpl::~LayerTreeImpl() { | 93 LayerTreeImpl::~LayerTreeImpl() { |
| 93 BreakSwapPromises(IsActiveTree() ? SwapPromise::SWAP_FAILS | 94 BreakSwapPromises(IsActiveTree() ? SwapPromise::SWAP_FAILS |
| 94 : SwapPromise::ACTIVATION_FAILS); | 95 : SwapPromise::ACTIVATION_FAILS); |
| 95 | 96 |
| 96 // Need to explicitly clear the tree prior to destroying this so that | 97 // Need to explicitly clear the tree prior to destroying this so that |
| 97 // the LayerTreeImpl pointer is still valid in the LayerImpl dtor. | 98 // the LayerTreeImpl pointer is still valid in the LayerImpl dtor. |
| (...skipping 325 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 423 if (next_activation_forces_redraw_) { | 424 if (next_activation_forces_redraw_) { |
| 424 target_tree->ForceRedrawNextActivation(); | 425 target_tree->ForceRedrawNextActivation(); |
| 425 next_activation_forces_redraw_ = false; | 426 next_activation_forces_redraw_ = false; |
| 426 } | 427 } |
| 427 | 428 |
| 428 target_tree->PassSwapPromises(std::move(swap_promise_list_)); | 429 target_tree->PassSwapPromises(std::move(swap_promise_list_)); |
| 429 | 430 |
| 430 target_tree->set_top_controls_shrink_blink_size( | 431 target_tree->set_top_controls_shrink_blink_size( |
| 431 top_controls_shrink_blink_size_); | 432 top_controls_shrink_blink_size_); |
| 432 target_tree->set_top_controls_height(top_controls_height_); | 433 target_tree->set_top_controls_height(top_controls_height_); |
| 434 target_tree->set_bottom_controls_height(bottom_controls_height_); |
| 433 target_tree->PushTopControls(nullptr); | 435 target_tree->PushTopControls(nullptr); |
| 434 | 436 |
| 435 // Active tree already shares the page_scale_factor object with pending | 437 // Active tree already shares the page_scale_factor object with pending |
| 436 // tree so only the limits need to be provided. | 438 // tree so only the limits need to be provided. |
| 437 target_tree->PushPageScaleFactorAndLimits(nullptr, min_page_scale_factor(), | 439 target_tree->PushPageScaleFactorAndLimits(nullptr, min_page_scale_factor(), |
| 438 max_page_scale_factor()); | 440 max_page_scale_factor()); |
| 439 target_tree->SetDeviceScaleFactor(device_scale_factor()); | 441 target_tree->SetDeviceScaleFactor(device_scale_factor()); |
| 440 target_tree->set_painted_device_scale_factor(painted_device_scale_factor()); | 442 target_tree->set_painted_device_scale_factor(painted_device_scale_factor()); |
| 441 target_tree->elastic_overscroll()->PushPendingToActive(); | 443 target_tree->elastic_overscroll()->PushPendingToActive(); |
| 442 | 444 |
| (...skipping 320 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 763 | 765 |
| 764 void LayerTreeImpl::set_top_controls_height(float top_controls_height) { | 766 void LayerTreeImpl::set_top_controls_height(float top_controls_height) { |
| 765 if (top_controls_height_ == top_controls_height) | 767 if (top_controls_height_ == top_controls_height) |
| 766 return; | 768 return; |
| 767 | 769 |
| 768 top_controls_height_ = top_controls_height; | 770 top_controls_height_ = top_controls_height; |
| 769 if (IsActiveTree()) | 771 if (IsActiveTree()) |
| 770 layer_tree_host_impl_->UpdateViewportContainerSizes(); | 772 layer_tree_host_impl_->UpdateViewportContainerSizes(); |
| 771 } | 773 } |
| 772 | 774 |
| 775 void LayerTreeImpl::set_bottom_controls_height(float bottom_controls_height) { |
| 776 if (bottom_controls_height_ == bottom_controls_height) |
| 777 return; |
| 778 |
| 779 bottom_controls_height_ = bottom_controls_height; |
| 780 if (IsActiveTree()) |
| 781 layer_tree_host_impl_->UpdateViewportContainerSizes(); |
| 782 } |
| 783 |
| 773 bool LayerTreeImpl::ClampTopControlsShownRatio() { | 784 bool LayerTreeImpl::ClampTopControlsShownRatio() { |
| 774 float ratio = top_controls_shown_ratio_->Current(true); | 785 float ratio = top_controls_shown_ratio_->Current(true); |
| 775 ratio = std::max(ratio, 0.f); | 786 ratio = std::max(ratio, 0.f); |
| 776 ratio = std::min(ratio, 1.f); | 787 ratio = std::min(ratio, 1.f); |
| 777 return top_controls_shown_ratio_->SetCurrent(ratio); | 788 return top_controls_shown_ratio_->SetCurrent(ratio); |
| 778 } | 789 } |
| 779 | 790 |
| 780 bool LayerTreeImpl::SetCurrentTopControlsShownRatio(float ratio) { | 791 bool LayerTreeImpl::SetCurrentTopControlsShownRatio(float ratio) { |
| 781 bool changed = top_controls_shown_ratio_->SetCurrent(ratio); | 792 bool changed = top_controls_shown_ratio_->SetCurrent(ratio); |
| 782 changed |= ClampTopControlsShownRatio(); | 793 changed |= ClampTopControlsShownRatio(); |
| (...skipping 1258 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2041 | 2052 |
| 2042 void LayerTreeImpl::ResetAllChangeTracking() { | 2053 void LayerTreeImpl::ResetAllChangeTracking() { |
| 2043 layers_that_should_push_properties_.clear(); | 2054 layers_that_should_push_properties_.clear(); |
| 2044 // Iterate over all layers, including masks and replicas. | 2055 // Iterate over all layers, including masks and replicas. |
| 2045 for (auto& layer : *layers_) | 2056 for (auto& layer : *layers_) |
| 2046 layer->ResetChangeTracking(); | 2057 layer->ResetChangeTracking(); |
| 2047 property_trees_.ResetAllChangeTracking(); | 2058 property_trees_.ResetAllChangeTracking(); |
| 2048 } | 2059 } |
| 2049 | 2060 |
| 2050 } // namespace cc | 2061 } // namespace cc |
| OLD | NEW |