diff --git a/libs/surfaces/mackie/mackie_control_protocol.cc b/libs/surfaces/mackie/mackie_control_protocol.cc index 4348d2e614..fbd6f286bc 100644 --- a/libs/surfaces/mackie/mackie_control_protocol.cc +++ b/libs/surfaces/mackie/mackie_control_protocol.cc @@ -59,6 +59,7 @@ #include "ardour/track.h" #include "ardour/types.h" #include "ardour/audioengine.h" +#include "ardour/vca_manager.h" #include "mackie_control_protocol.h" @@ -699,7 +700,7 @@ MackieControlProtocol::connect_session_signals() // receive routes added session->RouteAdded.connect(session_connections, MISSING_INVALIDATOR, boost::bind (&MackieControlProtocol::notify_routes_added, this, _1), this); // receive VCAs added - //session->RoutesAdded.connect(session_connections, MISSING_INVALIDATOR, boost::bind (&MackieControlProtocol::notify_stripable_added, this, _1), this); + session->vca_manager().VCAAdded.connect(session_connections, MISSING_INVALIDATOR, boost::bind (&MackieControlProtocol::notify_vca_added, this, _1), this); // receive record state toggled session->RecordStateChanged.connect(session_connections, MISSING_INVALIDATOR, boost::bind (&MackieControlProtocol::notify_record_state_changed, this), this); @@ -1243,6 +1244,12 @@ MackieControlProtocol::notify_stripable_removed () } } +void +MackieControlProtocol::notify_vca_added (ARDOUR::VCAList& vl) +{ + refresh_current_bank (); +} + // RouteList is the set of Routes that have just been added void MackieControlProtocol::notify_routes_added (ARDOUR::RouteList & rl) diff --git a/libs/surfaces/mackie/mackie_control_protocol.h b/libs/surfaces/mackie/mackie_control_protocol.h index 73d2f9174e..647d2fcdb3 100644 --- a/libs/surfaces/mackie/mackie_control_protocol.h +++ b/libs/surfaces/mackie/mackie_control_protocol.h @@ -188,6 +188,7 @@ class MackieControlProtocol void notify_subview_stripable_deleted (); void notify_stripable_removed (); void notify_routes_added (ARDOUR::RouteList &); + void notify_vca_added (ARDOUR::VCAList &); void notify_presentation_info_changed();