summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2016-03-12 22:59:00 -0500
committerPaul Davis <paul@linuxaudiosystems.com>2016-05-31 15:30:40 -0400
commitc107f1ab56270f4485ca2a787d575c2b5b53cfcf (patch)
tree55a529d5eb8550e3dc50fc2f987b8321fc169a8d
parent194b213456df43cb522651db6f27286a48eadec6 (diff)
show VCA master mute state in RouteUI, even if Config->get_show_solo_mutes() is false (since it is orthogonal)
-rw-r--r--gtk2_ardour/route_ui.cc10
1 files changed, 8 insertions, 2 deletions
diff --git a/gtk2_ardour/route_ui.cc b/gtk2_ardour/route_ui.cc
index c1f62f3a20..afaf4561c8 100644
--- a/gtk2_ardour/route_ui.cc
+++ b/gtk2_ardour/route_ui.cc
@@ -1243,13 +1243,13 @@ RouteUI::mute_active_state (Session* s, boost::shared_ptr<Route> r)
return ActiveState(0);
}
-
if (Config->get_show_solo_mutes() && !Config->get_solo_control_is_listen_control ()) {
if (r->muted ()) {
/* full mute */
return Gtkmm2ext::ExplicitActive;
- } else if (r->muted_by_others()) {
+ } else if (r->muted_by_others ()) {
+ /* this will reflect both solo mutes AND master mutes */
return Gtkmm2ext::ImplicitActive;
} else {
/* no mute at all */
@@ -1261,6 +1261,12 @@ RouteUI::mute_active_state (Session* s, boost::shared_ptr<Route> r)
if (r->muted()) {
/* full mute */
return Gtkmm2ext::ExplicitActive;
+ } else if (r->mute_master()->muted_by_others()) {
+ /* note the direct use of MuteMaster API here. We are
+ not interested in showing
+ others-soloed-so-this-muted status in this branch.
+ */
+ return Gtkmm2ext::ImplicitActive;
} else {
/* no mute at all */
return Gtkmm2ext::Off;