summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMiikka Heikkinen <miikka.heikkinen@qt.io>2018-07-05 12:13:10 +0300
committerMiikka Heikkinen <miikka.heikkinen@qt.io>2018-07-05 12:37:20 +0000
commitae206ce4aaed605a16510233cc6eb17d1840efa3 (patch)
tree79b3ae686291b1712f0f0e23616f97b3ea39e25b
parent9a320e0c2e23621562411ef590a0e92e01581e07 (diff)
Update snap steps also when undo/redo should change them
Moved updateSnapSteps calls from mouseReleaseEvent to property/keyframe update handlers, so snap steps will be updated also on undo/redo. Change-Id: Ib29e92d5cfd8c57f5a307e8207b2cfa980e1897c Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io> Reviewed-by: Jere Tuliniemi <jere.tuliniemi@qt.io> Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
-rw-r--r--src/Authoring/Studio/Palettes/TimelineGraphicsView/TimelineGraphicsScene.cpp4
-rw-r--r--src/Authoring/Studio/Palettes/TimelineGraphicsView/TimelineWidget.cpp2
2 files changed, 2 insertions, 4 deletions
diff --git a/src/Authoring/Studio/Palettes/TimelineGraphicsView/TimelineGraphicsScene.cpp b/src/Authoring/Studio/Palettes/TimelineGraphicsView/TimelineGraphicsScene.cpp
index 315c7cd7..847713e2 100644
--- a/src/Authoring/Studio/Palettes/TimelineGraphicsView/TimelineGraphicsScene.cpp
+++ b/src/Authoring/Studio/Palettes/TimelineGraphicsView/TimelineGraphicsScene.cpp
@@ -714,19 +714,16 @@ void TimelineGraphicsScene::mouseReleaseEvent(QGraphicsSceneMouseEvent *event)
} else if (m_keyframePressed) {
// update keyframe movement (time) to binding
m_keyframeManager->commitMoveSelectedKeyframes();
- updateSnapSteps();
} else if (m_clickedTimelineControlType == TimelineControlType::StartHandle) {
ITimelineTimebar *timebar = m_editedTimelineRow->rowTree()->getBinding()
->GetTimelineItem()->GetTimebar();
timebar->ChangeTime(m_editedTimelineRow->getStartTime() * 1000, true);
timebar->CommitTimeChange();
- updateSnapSteps();
} else if (m_clickedTimelineControlType == TimelineControlType::EndHandle) {
ITimelineTimebar *timebar = m_editedTimelineRow->rowTree()->getBinding()
->GetTimelineItem()->GetTimebar();
timebar->ChangeTime(m_editedTimelineRow->getEndTime() * 1000, false);
timebar->CommitTimeChange();
- updateSnapSteps();
if (m_playHead->time() > ruler()->duration())
g_StudioApp.GetCore()->GetDoc()->NotifyTimeChanged(ruler()->duration() * 1000);
} else if (m_dragging && m_clickedTimelineControlType == TimelineControlType::Duration) {
@@ -734,7 +731,6 @@ void TimelineGraphicsScene::mouseReleaseEvent(QGraphicsSceneMouseEvent *event)
->GetTimelineItem()->GetTimebar();
timebar->OffsetTime(m_editedTimelineRow->getDurationMoveTime() * 1000);
timebar->CommitTimeChange();
- updateSnapSteps();
if (m_playHead->time() > ruler()->duration())
g_StudioApp.GetCore()->GetDoc()->NotifyTimeChanged(ruler()->duration() * 1000);
} else if (!m_rulerPressed && (m_releaseSelectRow || !itemAt(event->scenePos(),
diff --git a/src/Authoring/Studio/Palettes/TimelineGraphicsView/TimelineWidget.cpp b/src/Authoring/Studio/Palettes/TimelineGraphicsView/TimelineWidget.cpp
index 6e61900f..f71105eb 100644
--- a/src/Authoring/Studio/Palettes/TimelineGraphicsView/TimelineWidget.cpp
+++ b/src/Authoring/Studio/Palettes/TimelineGraphicsView/TimelineWidget.cpp
@@ -819,6 +819,7 @@ void TimelineWidget::onAsyncUpdate()
}
for (RowTree *row : qAsConst(updateArrowParents))
row->updateArrowVisibility();
+ m_graphicsScene->updateSnapSteps();
}
if (!m_actionChanges.isEmpty()) {
QSet<RowTree *> rowSet;
@@ -844,6 +845,7 @@ void TimelineWidget::onAsyncUpdate()
row->rowTimeline()->updateKeyframesFromBinding(properties);
}
}
+ m_graphicsScene->updateSnapSteps();
}
}
m_dirtyProperties.clear();