diff --git a/gtk2_ardour/redirect_box.cc b/gtk2_ardour/redirect_box.cc index 4b69dfc418..e39f5cee04 100644 --- a/gtk2_ardour/redirect_box.cc +++ b/gtk2_ardour/redirect_box.cc @@ -147,6 +147,10 @@ RedirectBox::RedirectBox (Placement pcmnt, Session& sess, boost::shared_ptr plugin) } } - newplug_connection.disconnect(); + if (!using_plugin_selector) { + newplug_connection.disconnect(); + } } void @@ -1404,3 +1410,15 @@ RedirectBox::generate_redirect_title (boost::shared_ptr pi) return string_compose(_("%1: %2 (by %3)"), _route->name(), pi->name(), maker); } +void +RedirectBox::plugin_selector_hidden () +{ + newplug_connection.disconnect(); + using_plugin_selector = false; +} + +void +RedirectBox::plugin_selector_shown () +{ + using_plugin_selector = true; +} diff --git a/gtk2_ardour/redirect_box.h b/gtk2_ardour/redirect_box.h index cc5b87d62a..5c4c566f93 100644 --- a/gtk2_ardour/redirect_box.h +++ b/gtk2_ardour/redirect_box.h @@ -146,6 +146,9 @@ class RedirectBox : public Gtk::HBox void choose_plugin (); void insert_plugin_chosen (boost::shared_ptr); sigc::connection newplug_connection; + bool using_plugin_selector; + void plugin_selector_hidden (); + void plugin_selector_shown (); bool no_redirect_redisplay; bool ignore_delete;