diff --git a/src/plugins/qmldesigner/core/instances/objectnodeinstance.cpp b/src/plugins/qmldesigner/core/instances/objectnodeinstance.cpp index 6ebcc111da43fd59257ac0e4ff2ad0656451c95c..ca1716200fe561fce9049fb4064c94d9f8be6ff2 100644 --- a/src/plugins/qmldesigner/core/instances/objectnodeinstance.cpp +++ b/src/plugins/qmldesigner/core/instances/objectnodeinstance.cpp @@ -152,13 +152,13 @@ void ObjectNodeInstance::setNodeInstance(NodeInstanceView *view) void ObjectNodeInstance::setId(const QString &id) { - object()->setObjectName(id); - if (!id.isEmpty()) { context()->engine()->rootContext()->setContextProperty(id, object()); // will also force refresh of all bindings - } else { - context()->engine()->rootContext()->setContextProperty(id, 0); + } else if (!object()->objectName().isEmpty()) { + context()->engine()->rootContext()->setContextProperty(object()->objectName(), 0); } + + object()->setObjectName(id); } bool ObjectNodeInstance::isQmlGraphicsItem() const