diff options
author | Vikas Pachdha <vikas.pachdha@qt.io> | 2020-10-13 08:59:20 +0200 |
---|---|---|
committer | Vikas Pachdha <vikas.pachdha@qt.io> | 2020-10-13 10:42:39 +0000 |
commit | 6fe4f028a44e3ac06a9fe67ff0196419b0ebc0cb (patch) | |
tree | 4ae8f20470a8dc096eb26e595554d400e9cfa67d /src | |
parent | 2e25e2859d7f14a6c7fd81654e13cc5448985585 (diff) |
Designer: Relax type difference check on node sync
Task-number: QDS-2535
Change-Id: Ic762d40f9088d287db4d7c0c88bb7817b2bf6475
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
Diffstat (limited to 'src')
-rw-r--r-- | src/plugins/qmldesigner/designercore/model/rewriteaction.cpp | 4 | ||||
-rw-r--r-- | src/plugins/qmldesigner/designercore/model/texttomodelmerger.cpp | 5 |
2 files changed, 7 insertions, 2 deletions
diff --git a/src/plugins/qmldesigner/designercore/model/rewriteaction.cpp b/src/plugins/qmldesigner/designercore/model/rewriteaction.cpp index 106341043d..2b12f03b2b 100644 --- a/src/plugins/qmldesigner/designercore/model/rewriteaction.cpp +++ b/src/plugins/qmldesigner/designercore/model/rewriteaction.cpp @@ -181,8 +181,10 @@ bool ChangePropertyRewriteAction::execute(QmlRefactoring &refactoring, ModelNode { if (m_sheduledInHierarchy) { const int nodeLocation = positionStore.nodeOffset(m_property.parentModelNode()); - if (nodeLocation < 0) + if (nodeLocation < 0) { + qWarning() << "*** ChangePropertyRewriteAction::execute ignored. Invalid node location"; return true; + } bool result = false; if (m_property.isDefaultProperty()) { diff --git a/src/plugins/qmldesigner/designercore/model/texttomodelmerger.cpp b/src/plugins/qmldesigner/designercore/model/texttomodelmerger.cpp index 61f8d5e0c3..6c795f1d06 100644 --- a/src/plugins/qmldesigner/designercore/model/texttomodelmerger.cpp +++ b/src/plugins/qmldesigner/designercore/model/texttomodelmerger.cpp @@ -1119,8 +1119,11 @@ void TextToModelMerger::syncNode(ModelNode &modelNode, differenceHandler.typeDiffers(isRootNode, modelNode, typeName, majorVersion, minorVersion, astNode, context); - if (!isRootNode) + if (!isRootNode && modelNode.majorVersion() != -1 && modelNode.minorVersion() != -1) { + qWarning() << "Preempting Node sync. Type differs" << modelNode << + modelNode.majorVersion() << modelNode.minorVersion(); return; // the difference handler will create a new node, so we're done. + } } if (isComponentType(typeName) || isImplicitComponent) |