From bc08c10764b90401a4a73207e3e5d90a3740ddb4 Mon Sep 17 00:00:00 2001 From: Tim Jenssen Date: Thu, 21 Jan 2016 12:29:00 +0100 Subject: [PATCH] QmlDesigner: do no refresh if there is no parent Change-Id: I2299437ea97e884f4b7734129eec8246c87208ab Reviewed-by: Thomas Hartmann --- .../instances/quickitemnodeinstance.cpp | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/quickitemnodeinstance.cpp b/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/quickitemnodeinstance.cpp index 0014def3b00..8fb7cc3347d 100644 --- a/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/quickitemnodeinstance.cpp +++ b/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/quickitemnodeinstance.cpp @@ -580,15 +580,17 @@ void QuickItemNodeInstance::reparent(const ObjectNodeInstance::Pointer &oldParen setPropertyVariant("y", y()); } - refresh(); - if (quickItem()->window()) - DesignerSupport::updateDirtyNode(quickItem()); + if (quickItem()->parentItem()) { + refresh(); + if (quickItem()->window()) + DesignerSupport::updateDirtyNode(quickItem()); - if (instanceIsValidLayoutable(oldParentInstance, oldParentProperty)) - oldParentInstance->refreshLayoutable(); + if (instanceIsValidLayoutable(oldParentInstance, oldParentProperty)) + oldParentInstance->refreshLayoutable(); - if (instanceIsValidLayoutable(newParentInstance, newParentProperty)) - newParentInstance->refreshLayoutable(); + if (instanceIsValidLayoutable(newParentInstance, newParentProperty)) + newParentInstance->refreshLayoutable(); + } } void QuickItemNodeInstance::setPropertyVariant(const PropertyName &name, const QVariant &value)