summaryrefslogtreecommitdiff
path: root/libs
diff options
context:
space:
mode:
authorLen Ovens <len@ovenwerks.net>2016-02-02 09:38:55 -0800
committerLen Ovens <len@ovenwerks.net>2016-02-02 09:38:55 -0800
commit99a53ed7f0840fea95baec5bf91d6b766b4372e6 (patch)
tree843ab6d2bb6f869db7308e86fb65f3db1b83cd62 /libs
parent7229dccb3ba3e8feb94fa8b5bf8a1f39d0508ce8 (diff)
Mackie Control: Fix Flip mode getting confused if subview is not sends.
Diffstat (limited to 'libs')
-rw-r--r--libs/surfaces/mackie/mackie_control_protocol.cc7
-rw-r--r--libs/surfaces/mackie/mcp_buttons.cc12
2 files changed, 14 insertions, 5 deletions
diff --git a/libs/surfaces/mackie/mackie_control_protocol.cc b/libs/surfaces/mackie/mackie_control_protocol.cc
index 6b03d010ff..d6a07ba643 100644
--- a/libs/surfaces/mackie/mackie_control_protocol.cc
+++ b/libs/surfaces/mackie/mackie_control_protocol.cc
@@ -1708,6 +1708,10 @@ MackieControlProtocol::redisplay_subview_mode ()
int
MackieControlProtocol::set_subview_mode (SubViewMode sm, boost::shared_ptr<Route> r)
{
+ if (_flip_mode != Normal) {
+ set_flip_mode (Normal);
+ }
+
boost::shared_ptr<Route> old_route = _subview_route;
if (!subview_mode_would_be_ok (sm, r)) {
@@ -1823,6 +1827,9 @@ MackieControlProtocol::set_subview_mode (SubViewMode sm, boost::shared_ptr<Route
void
MackieControlProtocol::set_view_mode (ViewMode m)
{
+ if (_flip_mode != Normal) {
+ set_flip_mode (Normal);
+ }
ViewMode old_view_mode = _view_mode;
_view_mode = m;
diff --git a/libs/surfaces/mackie/mcp_buttons.cc b/libs/surfaces/mackie/mcp_buttons.cc
index a08575fd7c..78d9596a9f 100644
--- a/libs/surfaces/mackie/mcp_buttons.cc
+++ b/libs/surfaces/mackie/mcp_buttons.cc
@@ -738,12 +738,14 @@ MackieControlProtocol::dyn_release (Button &)
LedState
MackieControlProtocol::flip_press (Button &)
{
- if (_flip_mode != Normal) {
- set_flip_mode (Normal);
- } else {
- set_flip_mode (Mirror);
+ if (subview_mode() == MackieControlProtocol::Sends) {
+ if (_flip_mode != Normal) {
+ set_flip_mode (Normal);
+ } else {
+ set_flip_mode (Mirror);
+ }
+ return ((_flip_mode != Normal) ? on : off);
}
- return ((_flip_mode != Normal) ? on : off);
}
LedState
MackieControlProtocol::flip_release (Button &)