From 32ea051fb7ae203e34868ec9cc58f6b296c192ad Mon Sep 17 00:00:00 2001 From: Paul Davis Date: Tue, 13 May 2025 16:43:03 -0600 Subject: [PATCH] fix PatchChangeTriggerWindow so that if the clip is empty, it shows everything, rather than nothing --- gtk2_ardour/patch_change_widget.cc | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/gtk2_ardour/patch_change_widget.cc b/gtk2_ardour/patch_change_widget.cc index f78422d085..299c15f072 100644 --- a/gtk2_ardour/patch_change_widget.cc +++ b/gtk2_ardour/patch_change_widget.cc @@ -855,17 +855,28 @@ PatchChangeTriggerWindow::reset (std::shared_ptr r, std::shared_ptrused_channels(); uint32_t first_used_chan = 15; + uint32_t used_cnt = 0; + for (uint32_t chn = 0; chn < 16; ++chn) { if (used.test(chn)) { if (chn < first_used_chan) { first_used_chan = chn; } _w[chn]->show(); + used_cnt++; } else { _w[chn]->hide(); } } + if (used_cnt == 0) { + /* no channels in use - empty. So make everything visible */ + for (uint32_t chn = 0; chn < 16; ++chn) { + _w[chn]->show (); + } + first_used_chan = 0; + } + for (uint32_t chn = 0; chn < 16; ++chn) { _w[chn]->reset (r, t); }