From 5e95553c5c4e90d2432ae265375a984fec727acf Mon Sep 17 00:00:00 2001 From: Thomas Hartmann Date: Fri, 22 Sep 2017 17:10:55 +0200 Subject: [PATCH] QmlDesigner: Check if we are actually in a state Mapping the QmlPropertyChanges back to the item makes only sense if we are in a state. Change-Id: I47d7a8810b3f920b53bc73eb21980c8abd04c572 Reviewed-by: Thomas Hartmann --- .../qmldesigner/designercore/instances/nodeinstanceview.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/plugins/qmldesigner/designercore/instances/nodeinstanceview.cpp b/src/plugins/qmldesigner/designercore/instances/nodeinstanceview.cpp index bbb34e906a6..1f972b68a70 100644 --- a/src/plugins/qmldesigner/designercore/instances/nodeinstanceview.cpp +++ b/src/plugins/qmldesigner/designercore/instances/nodeinstanceview.cpp @@ -43,6 +43,7 @@ #include "nodelistproperty.h" #include "nodeproperty.h" #include "qmlchangeset.h" +#include "qmlstate.h" #include "qmltimelinemutator.h" #include "qmltimelinekeyframes.h" @@ -670,7 +671,7 @@ void NodeInstanceView::updatePosition(const QList &propertyList foreach (const VariantProperty &variantProperty, propertyList) { if (variantProperty.name() == "x") { const ModelNode modelNode = variantProperty.parentModelNode(); - if (QmlPropertyChanges::isValidQmlPropertyChanges(modelNode)) { + if (!currentState().isBaseState() && QmlPropertyChanges::isValidQmlPropertyChanges(modelNode)) { ModelNode targetModelNode = QmlPropertyChanges(modelNode).target(); if (targetModelNode.isValid()) { NodeInstance instance = instanceForModelNode(targetModelNode); @@ -682,7 +683,7 @@ void NodeInstanceView::updatePosition(const QList &propertyList } } else if (variantProperty.name() == "y") { const ModelNode modelNode = variantProperty.parentModelNode(); - if (QmlPropertyChanges::isValidQmlPropertyChanges(modelNode)) { + if (!currentState().isBaseState() && QmlPropertyChanges::isValidQmlPropertyChanges(modelNode)) { ModelNode targetModelNode = QmlPropertyChanges(modelNode).target(); if (targetModelNode.isValid()) { NodeInstance instance = instanceForModelNode(targetModelNode);