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

Unified Diff: cc/trees/layer_tree_host_impl.cc

Issue 2339583002: cc: Move OnScrollOffsetAnimated to scroll tree (Closed)
Patch Set: Created 4 years, 3 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « cc/layers/layer_impl.cc ('k') | cc/trees/layer_tree_host_impl_unittest.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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 3fb0a8f9c19a8c873a05a597d99c4431b7e1ab70..1bab93fea63e8a71ff1ff0772d362ca4fdcbaa1c 100644
--- a/cc/trees/layer_tree_host_impl.cc
+++ b/cc/trees/layer_tree_host_impl.cc
@@ -3925,6 +3925,8 @@ void LayerTreeHostImpl::SetTreeLayerFilterMutated(
return;
const int layer_id = tree->LayerIdByElementId(element_id);
+ DCHECK(tree->property_trees()->IsInIdToIndexMap(
+ PropertyTrees::TreeType::EFFECT, layer_id));
const int effect_id =
tree->property_trees()->effect_id_to_index_map[layer_id];
if (effect_id != EffectTree::kInvalidNodeId)
@@ -3939,6 +3941,8 @@ void LayerTreeHostImpl::SetTreeLayerOpacityMutated(ElementId element_id,
return;
const int layer_id = tree->LayerIdByElementId(element_id);
+ DCHECK(tree->property_trees()->IsInIdToIndexMap(
+ PropertyTrees::TreeType::EFFECT, layer_id));
const int effect_id =
tree->property_trees()->effect_id_to_index_map[layer_id];
if (effect_id != EffectTree::kInvalidNodeId)
@@ -3954,6 +3958,8 @@ void LayerTreeHostImpl::SetTreeLayerTransformMutated(
return;
const int layer_id = tree->LayerIdByElementId(element_id);
+ DCHECK(tree->property_trees()->IsInIdToIndexMap(
+ PropertyTrees::TreeType::TRANSFORM, layer_id));
const int transform_id =
tree->property_trees()->transform_id_to_index_map[layer_id];
if (transform_id != TransformTree::kInvalidNodeId)
@@ -3971,9 +3977,19 @@ void LayerTreeHostImpl::SetTreeLayerScrollOffsetMutated(
if (!tree)
return;
- LayerImpl* layer = tree->LayerByElementId(element_id);
- if (layer) {
- layer->OnScrollOffsetAnimated(scroll_offset);
+ const int layer_id = tree->LayerIdByElementId(element_id);
+ DCHECK(tree->property_trees()->IsInIdToIndexMap(
+ PropertyTrees::TreeType::TRANSFORM, layer_id));
+ DCHECK(tree->property_trees()->IsInIdToIndexMap(
+ PropertyTrees::TreeType::SCROLL, layer_id));
+ const int transform_id =
+ tree->property_trees()->transform_id_to_index_map[layer_id];
+ const int scroll_id =
+ tree->property_trees()->scroll_id_to_index_map[layer_id];
+ if (transform_id != TransformTree::kInvalidNodeId &&
+ scroll_id != ScrollTree::kInvalidNodeId) {
+ tree->property_trees()->scroll_tree.OnScrollOffsetAnimated(
+ layer_id, transform_id, scroll_id, scroll_offset, tree);
// Run mutation callbacks to respond to updated scroll offset.
Mutate(CurrentBeginFrameArgs().frame_time);
}
« no previous file with comments | « cc/layers/layer_impl.cc ('k') | cc/trees/layer_tree_host_impl_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698