QmlDesigner.Timeline: Avoid phantom timeline

Task-number: QDS-285
Change-Id: I9f642363ea50a3a5120ff76b0b5b99e2396bd863
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
This commit is contained in:
Thomas Hartmann
2019-03-19 17:12:31 +01:00
parent 7a4d4c2c0e
commit 05e68db284

View File

@@ -87,9 +87,11 @@ void TimelineView::nodeAboutToBeRemoved(const ModelNode &removedNode)
toolBar->removeTimeline(QmlTimeline(removedNode));
QString currentId = toolBar->currentTimelineId();
removedNode.setAuxiliaryData("removed", true);
if (currentId.isEmpty())
m_timelineWidget->graphicsScene()->clearTimeline();
else if (lastId != currentId)
if (lastId != currentId)
m_timelineWidget->setTimelineId(currentId);
}
}
@@ -397,7 +399,7 @@ QList<QmlTimeline> TimelineView::getTimelines() const
return timelines;
for (const ModelNode &modelNode : allModelNodes()) {
if (QmlTimeline::isValidQmlTimeline(modelNode)) {
if (QmlTimeline::isValidQmlTimeline(modelNode) && !modelNode.hasAuxiliaryData("removed")) {
timelines.append(modelNode);
}
}