Index: ui/compositor/layer_owner.cc |
diff --git a/ui/compositor/layer_owner.cc b/ui/compositor/layer_owner.cc |
index cd614b37d8dca3e7e11326c2777d0e72cd80336d..55ba0f3ec88e44ce3e00f33573a38ea653741463 100644 |
--- a/ui/compositor/layer_owner.cc |
+++ b/ui/compositor/layer_owner.cc |
@@ -66,6 +66,12 @@ scoped_ptr<Layer> LayerOwner::RecreateLayer() { |
new_layer->Add(child); |
} |
+ // If old_layer was the layer tree root then we need to move the Compositor |
+ // over to the new root. |
+ const bool is_root = !old_layer->parent(); |
+ if (is_root && old_layer->GetCompositor()) |
+ old_layer->GetCompositor()->SetRootLayer(new_layer); |
+ |
// Install the delegate last so that the delegate isn't notified as we copy |
// state to the new layer. |
new_layer->set_delegate(old_delegate); |