From 5d9d367cde42b58cd046f746af415787382476c2 Mon Sep 17 00:00:00 2001 From: Robin Gareus Date: Tue, 9 Sep 2025 01:25:33 +0200 Subject: [PATCH] Don't unset CueEditor:_track when changing regions. CueEditor::catch_pending_show_region() calls ::set_region which calls CueEditor::unset(false). This reset _track. Also PianorollWindow::set() calls set_track() before set_region(), the latter also reset CueEditor::_track. This fixes the Solo button in the Pianoroll window, and probably some other things, too. --- gtk2_ardour/cue_editor.cc | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/gtk2_ardour/cue_editor.cc b/gtk2_ardour/cue_editor.cc index 2c1185fdf6..c0bdae24eb 100644 --- a/gtk2_ardour/cue_editor.cc +++ b/gtk2_ardour/cue_editor.cc @@ -1471,11 +1471,14 @@ CueEditor::unset (bool trigger_too) count_in_connection.disconnect (); capture_connections.drop_connections (); - _track.reset (); _region.reset (); if (trigger_too) { ref = TriggerReference (); + _track.reset (); + } else if (_track) { + /* re-subscribe to object_connections */ + set_track (_track); } }