| 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);
|
| }
|
|
|