From e7982239b8c736baab9ed29ba89e7a3f1342700a Mon Sep 17 00:00:00 2001 From: itsmattkc <34096995+itsmattkc@users.noreply.github.com> Date: Thu, 12 Jan 2023 08:19:56 -0800 Subject: [PATCH] timeline: when rippling, don't create gap between clip and transition --- app/widget/timelinewidget/tool/ripple.cpp | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/app/widget/timelinewidget/tool/ripple.cpp b/app/widget/timelinewidget/tool/ripple.cpp index cacc4f1e5..0e1a75008 100644 --- a/app/widget/timelinewidget/tool/ripple.cpp +++ b/app/widget/timelinewidget/tool/ripple.cpp @@ -78,6 +78,15 @@ void RippleTool::InitiateDrag(Block *clicked_item, Timeline::MovementMode trim_m // Find the block that starts just after or at the ripple point Block* block_after_ripple = track->NearestBlockAfterOrAt(earliest_ripple); + // Exception for out-transitions, do not create a gap between them + if (block_after_ripple) { + if (ClipBlock *prev_clip = dynamic_cast(block_after_ripple->previous())) { + if (prev_clip->out_transition() == block_after_ripple) { + block_after_ripple = block_after_ripple->next(); + } + } + } + // If block is null, there will be no blocks after to ripple if (block_after_ripple) { TimelineViewGhostItem* ghost;