From b4a7c8a17d2c92890635ca934475f8c2263b384d Mon Sep 17 00:00:00 2001 From: Robin Gareus Date: Thu, 14 Jul 2022 01:23:04 +0200 Subject: [PATCH] Better version of 6a57baf193a This also fixes Menu > Edit Delete "delete MIDI" operation. Pressing backspace/delete calls "Delete Selection" which is unrelated to MRV::cut_copy_clear. --- gtk2_ardour/midi_region_view.cc | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/gtk2_ardour/midi_region_view.cc b/gtk2_ardour/midi_region_view.cc index 8185da5c80..fb7380d20b 100644 --- a/gtk2_ardour/midi_region_view.cc +++ b/gtk2_ardour/midi_region_view.cc @@ -3764,6 +3764,7 @@ MidiRegionView::cut_copy_clear (Editing::CutCopyOp op) if (op != Copy) { + bool as_subcommand = false; for (Selection::iterator i = _selection.begin(); i != _selection.end(); ++i) { switch (op) { @@ -3771,21 +3772,17 @@ MidiRegionView::cut_copy_clear (Editing::CutCopyOp op) break; case Delete: case Clear: - start_note_diff_command(); - /* fallthrough */ case Cut: - /* for Cut, Editor::cut_copy already started an undo operation, - * so we cannot call start_note_diff_command () - */ if (!_note_diff_command) { _note_diff_command = _model->new_note_diff_command ("Cut"); + as_subcommand = true; } note_diff_remove_note (*i); break; } } - apply_note_diff (op == Cut); + apply_note_diff (as_subcommand); } }