| OLD | NEW |
| 1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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 "platform/graphics/compositing/PropertyTreeManager.h" | 5 #include "platform/graphics/compositing/PropertyTreeManager.h" |
| 6 | 6 |
| 7 #include "cc/layers/layer.h" | 7 #include "cc/layers/layer.h" |
| 8 #include "cc/trees/clip_node.h" | 8 #include "cc/trees/clip_node.h" |
| 9 #include "cc/trees/effect_node.h" | 9 #include "cc/trees/effect_node.h" |
| 10 #include "cc/trees/property_tree.h" | 10 #include "cc/trees/property_tree.h" |
| (...skipping 116 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 127 | 127 |
| 128 m_effectStack.push_back( | 128 m_effectStack.push_back( |
| 129 BlinkEffectAndCcIdPair{EffectPaintPropertyNode::root(), effectNode.id}); | 129 BlinkEffectAndCcIdPair{EffectPaintPropertyNode::root(), effectNode.id}); |
| 130 m_rootLayer->SetEffectTreeIndex(effectNode.id); | 130 m_rootLayer->SetEffectTreeIndex(effectNode.id); |
| 131 } | 131 } |
| 132 | 132 |
| 133 void PropertyTreeManager::setupRootScrollNode() { | 133 void PropertyTreeManager::setupRootScrollNode() { |
| 134 cc::ScrollTree& scrollTree = m_propertyTrees.scroll_tree; | 134 cc::ScrollTree& scrollTree = m_propertyTrees.scroll_tree; |
| 135 scrollTree.clear(); | 135 scrollTree.clear(); |
| 136 m_propertyTrees.layer_id_to_scroll_node_index.clear(); | 136 m_propertyTrees.layer_id_to_scroll_node_index.clear(); |
| 137 m_propertyTrees.element_id_to_scroll_node_index.clear(); |
| 137 cc::ScrollNode& scrollNode = | 138 cc::ScrollNode& scrollNode = |
| 138 *scrollTree.Node(scrollTree.Insert(cc::ScrollNode(), kRealRootNodeId)); | 139 *scrollTree.Node(scrollTree.Insert(cc::ScrollNode(), kRealRootNodeId)); |
| 139 DCHECK_EQ(scrollNode.id, kSecondaryRootNodeId); | 140 DCHECK_EQ(scrollNode.id, kSecondaryRootNodeId); |
| 140 scrollNode.owning_layer_id = m_rootLayer->id(); | 141 scrollNode.owning_layer_id = m_rootLayer->id(); |
| 141 scrollNode.transform_id = kSecondaryRootNodeId; | 142 scrollNode.transform_id = kSecondaryRootNodeId; |
| 142 m_propertyTrees.layer_id_to_scroll_node_index[scrollNode.owning_layer_id] = | 143 m_propertyTrees.layer_id_to_scroll_node_index[scrollNode.owning_layer_id] = |
| 143 scrollNode.id; | 144 scrollNode.id; |
| 144 | 145 |
| 145 m_scrollNodeMap.set(ScrollPaintPropertyNode::root(), scrollNode.id); | 146 m_scrollNodeMap.set(ScrollPaintPropertyNode::root(), scrollNode.id); |
| 146 m_rootLayer->SetScrollTreeIndex(scrollNode.id); | 147 m_rootLayer->SetScrollTreeIndex(scrollNode.id); |
| (...skipping 113 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 260 compositorNode.bounds.SetSize(scrollNode->bounds().width(), | 261 compositorNode.bounds.SetSize(scrollNode->bounds().width(), |
| 261 scrollNode->bounds().height()); | 262 scrollNode->bounds().height()); |
| 262 compositorNode.user_scrollable_horizontal = | 263 compositorNode.user_scrollable_horizontal = |
| 263 scrollNode->userScrollableHorizontal(); | 264 scrollNode->userScrollableHorizontal(); |
| 264 compositorNode.user_scrollable_vertical = | 265 compositorNode.user_scrollable_vertical = |
| 265 scrollNode->userScrollableVertical(); | 266 scrollNode->userScrollableVertical(); |
| 266 compositorNode.transform_id = | 267 compositorNode.transform_id = |
| 267 ensureCompositorTransformNode(scrollNode->scrollOffsetTranslation()); | 268 ensureCompositorTransformNode(scrollNode->scrollOffsetTranslation()); |
| 268 compositorNode.main_thread_scrolling_reasons = | 269 compositorNode.main_thread_scrolling_reasons = |
| 269 scrollNode->mainThreadScrollingReasons(); | 270 scrollNode->mainThreadScrollingReasons(); |
| 271 CompositorElementId compositorElementId = scrollNode->compositorElementId(); |
| 272 if (compositorElementId) { |
| 273 compositorNode.element_id = compositorElementId; |
| 274 m_propertyTrees.element_id_to_scroll_node_index[compositorElementId] = id; |
| 275 } |
| 270 | 276 |
| 271 auto result = m_scrollNodeMap.set(scrollNode, id); | 277 auto result = m_scrollNodeMap.set(scrollNode, id); |
| 272 DCHECK(result.isNewEntry); | 278 DCHECK(result.isNewEntry); |
| 273 scrollTree().set_needs_update(true); | 279 scrollTree().set_needs_update(true); |
| 274 | 280 |
| 275 return id; | 281 return id; |
| 276 } | 282 } |
| 277 | 283 |
| 278 void PropertyTreeManager::updateScrollOffset(int layerId, int scrollId) { | 284 void PropertyTreeManager::updateScrollOffset(int layerId, int scrollId) { |
| 279 cc::ScrollNode& scrollNode = *scrollTree().Node(scrollId); | 285 cc::ScrollNode& scrollNode = *scrollTree().Node(scrollId); |
| (...skipping 99 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 379 m_effectStack.push_back(BlinkEffectAndCcIdPair{nextEffect, effectNode.id}); | 385 m_effectStack.push_back(BlinkEffectAndCcIdPair{nextEffect, effectNode.id}); |
| 380 | 386 |
| 381 dummyLayer->set_property_tree_sequence_number(kPropertyTreeSequenceNumber); | 387 dummyLayer->set_property_tree_sequence_number(kPropertyTreeSequenceNumber); |
| 382 dummyLayer->SetTransformTreeIndex(kSecondaryRootNodeId); | 388 dummyLayer->SetTransformTreeIndex(kSecondaryRootNodeId); |
| 383 dummyLayer->SetClipTreeIndex(outputClipId); | 389 dummyLayer->SetClipTreeIndex(outputClipId); |
| 384 dummyLayer->SetEffectTreeIndex(effectNode.id); | 390 dummyLayer->SetEffectTreeIndex(effectNode.id); |
| 385 dummyLayer->SetScrollTreeIndex(kRealRootNodeId); | 391 dummyLayer->SetScrollTreeIndex(kRealRootNodeId); |
| 386 } | 392 } |
| 387 | 393 |
| 388 } // namespace blink | 394 } // namespace blink |
| OLD | NEW |