diff --git a/src/plugins/qmldesigner/designercore/instances/nodeinstanceview.cpp b/src/plugins/qmldesigner/designercore/instances/nodeinstanceview.cpp
index c63ab3580d168153fc98841504e5a9cae7b46e77..7de2e70e6ee5ce059c6e53bdb068060698587afe 100644
--- a/src/plugins/qmldesigner/designercore/instances/nodeinstanceview.cpp
+++ b/src/plugins/qmldesigner/designercore/instances/nodeinstanceview.cpp
@@ -314,10 +314,7 @@ void NodeInstanceView::removeInstanceAndSubInstances(const ModelNode &node)
 
 void NodeInstanceView::rootNodeTypeChanged(const QString &/*type*/, int /*majorVersion*/, int /*minorVersion*/)
 {
-    nodeInstanceServer()->clearScene(createClearSceneCommand());
-    removeAllInstanceNodeRelationships();
-
-    nodeInstanceServer()->createScene(createCreateSceneCommand());
+    restartProcess();
 }
 
 void NodeInstanceView::bindingPropertiesChanged(const QList<BindingProperty>& propertyList, PropertyChangeFlags /*propertyChange*/)