| Index: cc/trees/layer_tree_host_impl.cc
|
| diff --git a/cc/trees/layer_tree_host_impl.cc b/cc/trees/layer_tree_host_impl.cc
|
| index 94d52bc4c717933db54f59c621e1dd06b22ba948..61a19b0436259e04563e9a568e7ec8a5aed68921 100644
|
| --- a/cc/trees/layer_tree_host_impl.cc
|
| +++ b/cc/trees/layer_tree_host_impl.cc
|
| @@ -2075,6 +2075,7 @@ void LayerTreeHostImpl::PushScrollbarOpacitiesFromActiveToPending() {
|
| void LayerTreeHostImpl::ActivateSyncTree() {
|
| if (pending_tree_) {
|
| TRACE_EVENT_ASYNC_END0("cc", "PendingTree:waiting", pending_tree_.get());
|
| + active_tree_->lifecycle().AdvanceTo(LayerTreeLifecycle::kBeginningSync);
|
|
|
| DCHECK(pending_tree_duration_timer_);
|
| // Reset will call the destructor and log the timer histogram.
|
| @@ -2090,25 +2091,21 @@ void LayerTreeHostImpl::ActivateSyncTree() {
|
| active_tree_.get());
|
| }
|
|
|
| - // Property trees may store damage status. We preserve the active tree
|
| - // damage status by pushing the damage status from active tree property
|
| - // trees to pending tree property trees or by moving it onto the layers.
|
| - if (active_tree_->property_trees()->changed) {
|
| - if (pending_tree_->property_trees()->sequence_number ==
|
| - active_tree_->property_trees()->sequence_number)
|
| - active_tree_->property_trees()->PushChangeTrackingTo(
|
| - pending_tree_->property_trees());
|
| - else
|
| - active_tree_->MoveChangeTrackingToLayers();
|
| - }
|
| - TreeSynchronizer::PushLayerProperties(pending_tree(), active_tree());
|
| -
|
| PushScrollbarOpacitiesFromActiveToPending();
|
| + pending_tree_->PushPropertyTreesTo(active_tree_.get());
|
| + active_tree_->lifecycle().AdvanceTo(
|
| + LayerTreeLifecycle::kSyncedPropertyTrees);
|
| +
|
| + TreeSynchronizer::PushLayerProperties(pending_tree(), active_tree());
|
| + active_tree_->lifecycle().AdvanceTo(
|
| + LayerTreeLifecycle::kSyncedLayerProperties);
|
|
|
| pending_tree_->PushPropertiesTo(active_tree_.get());
|
| if (!pending_tree_->LayerListIsEmpty())
|
| pending_tree_->property_trees()->ResetAllChangeTracking();
|
|
|
| + active_tree_->lifecycle().AdvanceTo(LayerTreeLifecycle::kNotSyncing);
|
| +
|
| // Now that we've synced everything from the pending tree to the active
|
| // tree, rename the pending tree the recycle tree so we can reuse it on the
|
| // next sync.
|
|
|