diff options
author | Henning Gruendl <henning.gruendl@qt.io> | 2022-09-23 16:14:22 +0200 |
---|---|---|
committer | Henning Gründl <henning.gruendl@qt.io> | 2022-09-23 14:50:44 +0000 |
commit | 5582a8047a913844e7cc75a62653e9b9fc179342 (patch) | |
tree | faaee542abac9c42c122370991c245fcd46d5d50 | |
parent | d9201393027022f1851f9a36362984fb83eb897e (diff) | |
download | qt-creator-5582a8047a913844e7cc75a62653e9b9fc179342.tar.gz |
QmlDesigner: Fix model sync on property remove
Removing the name property of a state in the TextEditor was not
triggering a model rest, which caused the StateEditor being in a wrong
state.
Change-Id: I1bd43f5f6bfb962e4a838cbd74c37c7ed4e37d9c
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
-rw-r--r-- | src/plugins/qmldesigner/components/stateseditornew/stateseditorview.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/plugins/qmldesigner/components/stateseditornew/stateseditorview.cpp b/src/plugins/qmldesigner/components/stateseditornew/stateseditorview.cpp index 9a0af786c3..a4ba6867cb 100644 --- a/src/plugins/qmldesigner/components/stateseditornew/stateseditorview.cpp +++ b/src/plugins/qmldesigner/components/stateseditornew/stateseditorview.cpp @@ -719,7 +719,7 @@ void StatesEditorView::propertiesRemoved(const QList<AbstractProperty>& property for (const AbstractProperty &property : propertyList) { if (property.name() == "states" && property.parentModelNode() == activeStateGroup().modelNode()) resetModel(); - if (property.name() == "when" + if ((property.name() == "when" || property.name() == "name") && QmlModelState::isValidQmlModelState(property.parentModelNode())) resetModel(); if (property.name() == "extend") @@ -847,7 +847,8 @@ void StatesEditorView::variantPropertiesChanged(const QList<VariantProperty> &pr auto guard = qScopeGuard([&]() { m_block = false; }); for (const VariantProperty &property : propertyList) { - if (property.name() == "name" && QmlModelState::isValidQmlModelState(property.parentModelNode())) + if (property.name() == "name" + && QmlModelState::isValidQmlModelState(property.parentModelNode())) resetModel(); else if (property.name() == "state" && property.parentModelNode() == activeStateGroup().modelNode()) |