diff --git a/src/plugins/qmldesigner/components/transitioneditor/transitioneditorsettingsdialog.cpp b/src/plugins/qmldesigner/components/transitioneditor/transitioneditorsettingsdialog.cpp index b57a2b4e6de..375eb974f63 100644 --- a/src/plugins/qmldesigner/components/transitioneditor/transitioneditorsettingsdialog.cpp +++ b/src/plugins/qmldesigner/components/transitioneditor/transitioneditorsettingsdialog.cpp @@ -132,8 +132,10 @@ void TransitionEditorSettingsDialog::setupTransitions(const ModelNode &newTransi return; } - for (const auto &transition : transitions) + for (const auto &transition : transitions) { + transition.ensureIdExists(); addTransitionTab(transition); + } if (newTransition.isValid()) { m_currentTransition = newTransition; @@ -146,8 +148,10 @@ void TransitionEditorSettingsDialog::setupTransitions(const ModelNode &newTransi void TransitionEditorSettingsDialog::addTransitionTab(const QmlTimeline &node) { + QTC_ASSERT(node.modelNode().hasId(), return); + auto transitionForm = new TransitionForm(this); - ui->timelineTab->addTab(transitionForm, node.modelNode().displayName()); + ui->timelineTab->addTab(transitionForm, node.modelNode().id()); transitionForm->setTransition(node); connect(transitionForm, &TransitionForm::stateGroupChanged, this, [this](const ModelNode &transition, const ModelNode &stateGroup){