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

Side by Side Diff: cc/test/fake_layer_tree_host.cc

Issue 1808373002: cc : Make tree synchronization independent of layer tree hierarchy (2) (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 9 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/proto/layer_tree_host.proto ('k') | cc/trees/layer_tree_host.h » ('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 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 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/test/fake_layer_tree_host.h" 5 #include "cc/test/fake_layer_tree_host.h"
6 6
7 #include "cc/layers/layer.h" 7 #include "cc/layers/layer.h"
8 #include "cc/test/fake_image_serialization_processor.h" 8 #include "cc/test/fake_image_serialization_processor.h"
9 #include "cc/test/test_task_graph_runner.h" 9 #include "cc/test/test_task_graph_runner.h"
10 10
(...skipping 68 matching lines...) Expand 10 before | Expand all | Expand 10 after
79 } 79 }
80 80
81 void FakeLayerTreeHost::SetNeedsCommit() { needs_commit_ = true; } 81 void FakeLayerTreeHost::SetNeedsCommit() { needs_commit_ = true; }
82 82
83 LayerImpl* FakeLayerTreeHost::CommitAndCreateLayerImplTree() { 83 LayerImpl* FakeLayerTreeHost::CommitAndCreateLayerImplTree() {
84 scoped_ptr<LayerImpl> old_root_layer_impl = active_tree()->DetachLayerTree(); 84 scoped_ptr<LayerImpl> old_root_layer_impl = active_tree()->DetachLayerTree();
85 85
86 scoped_ptr<LayerImpl> layer_impl = TreeSynchronizer::SynchronizeTrees( 86 scoped_ptr<LayerImpl> layer_impl = TreeSynchronizer::SynchronizeTrees(
87 root_layer(), std::move(old_root_layer_impl), active_tree()); 87 root_layer(), std::move(old_root_layer_impl), active_tree());
88 active_tree()->SetPropertyTrees(*property_trees()); 88 active_tree()->SetPropertyTrees(*property_trees());
89 TreeSynchronizer::PushProperties(root_layer(), layer_impl.get()); 89 TreeSynchronizer::PushLayerProperties(root_layer()->layer_tree_host(),
90 active_tree());
90 91
91 active_tree()->SetRootLayer(std::move(layer_impl)); 92 active_tree()->SetRootLayer(std::move(layer_impl));
92 active_tree()->UpdatePropertyTreeScrollOffset(property_trees()); 93 active_tree()->UpdatePropertyTreeScrollOffset(property_trees());
93 94
94 if (page_scale_layer() && inner_viewport_scroll_layer()) { 95 if (page_scale_layer() && inner_viewport_scroll_layer()) {
95 active_tree()->SetViewportLayersFromIds( 96 active_tree()->SetViewportLayersFromIds(
96 overscroll_elasticity_layer() ? overscroll_elasticity_layer()->id() 97 overscroll_elasticity_layer() ? overscroll_elasticity_layer()->id()
97 : Layer::INVALID_ID, 98 : Layer::INVALID_ID,
98 page_scale_layer()->id(), inner_viewport_scroll_layer()->id(), 99 page_scale_layer()->id(), inner_viewport_scroll_layer()->id(),
99 outer_viewport_scroll_layer() ? outer_viewport_scroll_layer()->id() 100 outer_viewport_scroll_layer() ? outer_viewport_scroll_layer()->id()
100 : Layer::INVALID_ID); 101 : Layer::INVALID_ID);
101 } 102 }
102 103
103 active_tree()->UpdatePropertyTreesForBoundsDelta(); 104 active_tree()->UpdatePropertyTreesForBoundsDelta();
104 return active_tree()->root_layer(); 105 return active_tree()->root_layer();
105 } 106 }
106 107
107 LayerImpl* FakeLayerTreeHost::CommitAndCreatePendingTree() { 108 LayerImpl* FakeLayerTreeHost::CommitAndCreatePendingTree() {
108 scoped_ptr<LayerImpl> old_root_layer_impl = pending_tree()->DetachLayerTree(); 109 scoped_ptr<LayerImpl> old_root_layer_impl = pending_tree()->DetachLayerTree();
109 110
110 scoped_ptr<LayerImpl> layer_impl = TreeSynchronizer::SynchronizeTrees( 111 scoped_ptr<LayerImpl> layer_impl = TreeSynchronizer::SynchronizeTrees(
111 root_layer(), std::move(old_root_layer_impl), pending_tree()); 112 root_layer(), std::move(old_root_layer_impl), pending_tree());
112 pending_tree()->SetPropertyTrees(*property_trees()); 113 pending_tree()->SetPropertyTrees(*property_trees());
113 TreeSynchronizer::PushProperties(root_layer(), layer_impl.get()); 114 TreeSynchronizer::PushLayerProperties(root_layer()->layer_tree_host(),
115 pending_tree());
114 116
115 pending_tree()->SetRootLayer(std::move(layer_impl)); 117 pending_tree()->SetRootLayer(std::move(layer_impl));
116 pending_tree()->UpdatePropertyTreeScrollOffset(property_trees()); 118 pending_tree()->UpdatePropertyTreeScrollOffset(property_trees());
117 return pending_tree()->root_layer(); 119 return pending_tree()->root_layer();
118 } 120 }
119 121
120 } // namespace cc 122 } // namespace cc
OLDNEW
« no previous file with comments | « cc/proto/layer_tree_host.proto ('k') | cc/trees/layer_tree_host.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698