From 67f8906e40dea7e35244382ecb7e0cc88e679eff Mon Sep 17 00:00:00 2001 From: Paul Davis Date: Fri, 21 Nov 2025 22:37:05 -0700 Subject: [PATCH] try to make editing clip boundaries always reversible Apparently without success. To be investigated --- gtk2_ardour/cue_editor.cc | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/gtk2_ardour/cue_editor.cc b/gtk2_ardour/cue_editor.cc index 3a8182c955..0bb301b8ae 100644 --- a/gtk2_ardour/cue_editor.cc +++ b/gtk2_ardour/cue_editor.cc @@ -1976,15 +1976,19 @@ CueEditor::set_start (Temporal::timepos_t const & p) { EC_LOCAL_TEMPO_SCOPE; + begin_reversible_command (_("trim region front")); + if (ref.trigger()) { + ref.trigger()->the_region()->clear_changes (); ref.trigger()->the_region()->trim_front (p); + add_command (new PBD::StatefulDiffCommand (ref.trigger()->the_region())); } else if (_region) { - begin_reversible_command (_("trim region front")); _region->clear_changes (); _region->trim_front (_region->source_position() + p); add_command (new PBD::StatefulDiffCommand (_region)); - commit_reversible_command (); } + + commit_reversible_command (); } void @@ -1992,13 +1996,17 @@ CueEditor::set_end (Temporal::timepos_t const & p) { EC_LOCAL_TEMPO_SCOPE; + begin_reversible_command (_("trim region end")); + if (ref.trigger()) { + ref.trigger()->the_region()->clear_changes (); ref.trigger()->the_region()->trim_end (p); + add_command (new PBD::StatefulDiffCommand (ref.trigger()->the_region())); } else if (_region) { - begin_reversible_command (_("trim region end")); _region->clear_changes (); _region->trim_end (_region->source_position() + p); add_command (new PBD::StatefulDiffCommand (_region)); - commit_reversible_command (); } + + commit_reversible_command (); }