From bfe52ca6686a925fe553f59ced96762dd46d7f59 Mon Sep 17 00:00:00 2001 From: Paul Davis Date: Thu, 18 Nov 2021 11:34:50 -0700 Subject: [PATCH] key enforcement: if NoInsert is in effect, MIDI mouse editing does not insert non-scale notes --- gtk2_ardour/midi_region_view.cc | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/gtk2_ardour/midi_region_view.cc b/gtk2_ardour/midi_region_view.cc index 799eabb418..4db1e38d5c 100644 --- a/gtk2_ardour/midi_region_view.cc +++ b/gtk2_ardour/midi_region_view.cc @@ -856,6 +856,13 @@ MidiRegionView::create_note_at (timepos_t const & t, double y, Temporal::Beats l Temporal::Beats region_start = t.beats(); const double note = view->y_to_note(y); + + if (mtv->midi_track()->key_enforcment_policy() & NoInsert) { + if (!mtv->midi_track()->key().in_key (note)) { + return; + } + } + const uint8_t chan = get_channel_for_add(region_start); const uint8_t velocity = get_velocity_for_add (region_start);