| Index: cc/layers/layer.cc
|
| diff --git a/cc/layers/layer.cc b/cc/layers/layer.cc
|
| index fb445ecc84b66e2f0289b496cb0b10526717faf6..84ced559d970284fba8730f88b5d8ea30f9e0c96 100644
|
| --- a/cc/layers/layer.cc
|
| +++ b/cc/layers/layer.cc
|
| @@ -122,10 +122,14 @@ void Layer::SetLayerTreeHost(LayerTreeHost* host) {
|
| if (layer_tree_host_) {
|
| layer_tree_host_->property_trees()->needs_rebuild = true;
|
| layer_tree_host_->UnregisterLayer(this);
|
| + if (element_id())
|
| + layer_tree_host_->UnregisterLayerForElementId(this);
|
| }
|
| if (host) {
|
| host->property_trees()->needs_rebuild = true;
|
| host->RegisterLayer(this);
|
| + if (element_id())
|
| + host->RegisterLayerForElementId(this);
|
| }
|
|
|
| layer_tree_host_ = host;
|
| @@ -843,7 +847,15 @@ void Layer::SetScrollClipLayerId(int clip_layer_id) {
|
| DCHECK(IsPropertyChangeAllowed());
|
| if (scroll_clip_layer_id_ == clip_layer_id)
|
| return;
|
| +
|
| + if (layer_tree_host_ && element_id())
|
| + layer_tree_host_->UnregisterLayerForElementId(this);
|
| +
|
| scroll_clip_layer_id_ = clip_layer_id;
|
| +
|
| + if (layer_tree_host_ && element_id())
|
| + layer_tree_host_->RegisterLayerForElementId(this);
|
| +
|
| SetNeedsCommit();
|
| }
|
|
|
| @@ -1731,7 +1743,14 @@ void Layer::SetElementId(ElementId id) {
|
| return;
|
| TRACE_EVENT1(TRACE_DISABLED_BY_DEFAULT("compositor-worker"),
|
| "Layer::SetElementId", "id", id);
|
| + if (layer_tree_host_ && element_id())
|
| + layer_tree_host_->UnregisterLayerForElementId(this);
|
| +
|
| element_id_ = id;
|
| +
|
| + if (layer_tree_host_ && element_id())
|
| + layer_tree_host_->RegisterLayerForElementId(this);
|
| +
|
| SetNeedsCommit();
|
| }
|
|
|
|
|