From 9eb0aa80e1b4c56020c57ad77cf3281bdb0e0fa8 Mon Sep 17 00:00:00 2001 From: itsmattkc <34096995+itsmattkc@users.noreply.github.com> Date: Mon, 25 Jul 2022 18:17:51 -0700 Subject: [PATCH] timeline: when ripple removing area, don't split gaps --- app/widget/timelinewidget/undo/timelineundoripple.cpp | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/app/widget/timelinewidget/undo/timelineundoripple.cpp b/app/widget/timelinewidget/undo/timelineundoripple.cpp index 3b7bdcac9..d940ea00d 100644 --- a/app/widget/timelinewidget/undo/timelineundoripple.cpp +++ b/app/widget/timelinewidget/undo/timelineundoripple.cpp @@ -63,8 +63,14 @@ void TrackRippleRemoveAreaCommand::prepare() // If it's getting trimmed, determine if it's actually getting spliced if (first_block_is_out_trimmed && first_block_is_in_trimmed) { - // This block is getting spliced, so we'll handle that later - splice_split_command_ = new BlockSplitCommand(first_block, range_.in()); + if (dynamic_cast(first_block)) { + trim_out_ = {first_block, + first_block->length(), + first_block->length() - range_.length()}; + } else { + // This block is getting spliced, so we'll handle that later + splice_split_command_ = new BlockSplitCommand(first_block, range_.in()); + } } else { // It's just getting trimmed or removed, so we'll append that operation if (first_block_is_out_trimmed) {