From e97b5a9a1438fba0cceaaa2f2746a60b1a5bf468 Mon Sep 17 00:00:00 2001 From: itsmattkc Date: Sun, 21 Jun 2020 13:12:07 +1000 Subject: [PATCH] nodeparamview: set time on node set Fixes bug where keyframes would land on 0 unless the time is set a second time. --- app/widget/nodeparamview/nodeparamview.cpp | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/app/widget/nodeparamview/nodeparamview.cpp b/app/widget/nodeparamview/nodeparamview.cpp index eaae8d0eb..bc7f1e07d 100644 --- a/app/widget/nodeparamview/nodeparamview.cpp +++ b/app/widget/nodeparamview/nodeparamview.cpp @@ -177,18 +177,21 @@ void NodeParamView::SetNodes(QList nodes) if (viewer) { SetTimebase(viewer->video_params().time_base()); + rational time = Timecode::timestamp_to_time(this->GetTimestamp(), timebase()); + // Set viewer as a time target keyframe_view_->SetTimeTarget(viewer); foreach (NodeParamViewItem* item, items_) { item->SetTimeTarget(viewer); + item->SetTime(time); } emit TimeTargetChanged(viewer); } // Forces the scroll to update to this time - keyframe_view_->SetTime(ruler()->GetTime()); + keyframe_view_->SetTime(GetTimestamp()); } } @@ -239,7 +242,7 @@ void NodeParamView::DeleteSelected() void NodeParamView::UpdateItemTime(const int64_t ×tamp) { - rational time = Timecode::timestamp_to_time(timestamp, keyframe_view_->timebase()); + rational time = Timecode::timestamp_to_time(timestamp, timebase()); foreach (NodeParamViewItem* item, items_) { item->SetTime(time);