From f608ad1f2711943adffe56b154182eec45f53b63 Mon Sep 17 00:00:00 2001 From: Paul Davis Date: Wed, 15 Jan 2025 18:09:18 -0700 Subject: [PATCH] make escape in pianoroll clear point selection as well as notes --- gtk2_ardour/pianoroll.cc | 3 ++- gtk2_ardour/pianoroll_midi_view.cc | 11 +++++++++++ gtk2_ardour/pianoroll_midi_view.h | 1 + 3 files changed, 14 insertions(+), 1 deletion(-) diff --git a/gtk2_ardour/pianoroll.cc b/gtk2_ardour/pianoroll.cc index 8f920a4ac3..c7d86dc713 100644 --- a/gtk2_ardour/pianoroll.cc +++ b/gtk2_ardour/pianoroll.cc @@ -1681,8 +1681,9 @@ Pianoroll::escape () return; } - view->clear_note_selection (); + view->clear_selection (); } + Gdk::Cursor* Pianoroll::which_track_cursor () const { diff --git a/gtk2_ardour/pianoroll_midi_view.cc b/gtk2_ardour/pianoroll_midi_view.cc index 7fea3140e1..6b1fc645a6 100644 --- a/gtk2_ardour/pianoroll_midi_view.cc +++ b/gtk2_ardour/pianoroll_midi_view.cc @@ -631,3 +631,14 @@ PianorollMidiView::point_selection_changed () active_automation->line->set_selected_points (_editing_context.get_selection().points); } } + +void +PianorollMidiView::clear_selection () +{ + MidiView::clear_note_selection (); + PointSelection empty; + + for (CueAutomationMap::iterator i = automation_map.begin(); i != automation_map.end(); ++i) { + i->second.line->set_selected_points (empty); + } +} diff --git a/gtk2_ardour/pianoroll_midi_view.h b/gtk2_ardour/pianoroll_midi_view.h index d2b18a1955..f1d00063d2 100644 --- a/gtk2_ardour/pianoroll_midi_view.h +++ b/gtk2_ardour/pianoroll_midi_view.h @@ -78,6 +78,7 @@ class PianorollMidiView : public MidiView void automation_leave (); void point_selection_changed (); + void clear_selection (); sigc::signal AutomationStateChange;