diff options
-rw-r--r-- | gtk2_ardour/ardour_ui_options.cc | 11 | ||||
-rw-r--r-- | libs/ardour/session_transport.cc | 2 |
2 files changed, 12 insertions, 1 deletions
diff --git a/gtk2_ardour/ardour_ui_options.cc b/gtk2_ardour/ardour_ui_options.cc index 90e56ee532..e946916d60 100644 --- a/gtk2_ardour/ardour_ui_options.cc +++ b/gtk2_ardour/ardour_ui_options.cc @@ -822,6 +822,17 @@ ARDOUR_UI::parameter_changed (const char* parameter_name) if (PARAM_IS ("slave-source")) { sync_option_combo.set_active_text (slave_source_to_string (Config->get_slave_source())); + + switch (Config->get_slave_source()) { + case None: + ActionManager::get_action ("Transport", "ToggleAutoPlay")->set_sensitive (true); + break; + + default: + /* XXX need to make auto-play is off as well as insensitive */ + ActionManager::get_action ("Transport", "ToggleAutoPlay")->set_sensitive (false); + break; + } } else if (PARAM_IS ("send-mtc")) { diff --git a/libs/ardour/session_transport.cc b/libs/ardour/session_transport.cc index 9d9e0ca1f0..cf450bce8f 100644 --- a/libs/ardour/session_transport.cc +++ b/libs/ardour/session_transport.cc @@ -924,7 +924,7 @@ Session::post_transport () if (post_transport_work & PostTransportLocate) { - if ((Config->get_auto_play() && !_exporting) || (post_transport_work & PostTransportRoll)) { + if (((Config->get_slave_source() == None && Config->get_auto_play()) && !_exporting) || (post_transport_work & PostTransportRoll)) { start_transport (); } else { |