summaryrefslogtreecommitdiff
path: root/gtk2_ardour/processor_box.cc
diff options
context:
space:
mode:
authorRobin Gareus <robin@gareus.org>2016-05-24 18:18:26 +0200
committerRobin Gareus <robin@gareus.org>2016-05-24 18:18:26 +0200
commitcfee8ac85211015bb3676b93805883c617d7643e (patch)
tree6c478c38f631e49eddcf237cedc24e70d6db3b7a /gtk2_ardour/processor_box.cc
parenta525055ce06a0d9c23cd12264d389b7dc74e9593 (diff)
fix UI wire display to not coalesce views for non-linear i/o.
Diffstat (limited to 'gtk2_ardour/processor_box.cc')
-rw-r--r--gtk2_ardour/processor_box.cc9
1 files changed, 6 insertions, 3 deletions
diff --git a/gtk2_ardour/processor_box.cc b/gtk2_ardour/processor_box.cc
index b2fa760b6b..b4634c6b08 100644
--- a/gtk2_ardour/processor_box.cc
+++ b/gtk2_ardour/processor_box.cc
@@ -1124,6 +1124,9 @@ ProcessorEntry::RoutingIcon::can_coalesce () const {
if (_fed_by && _f_out != _f_sources) {
return false;
}
+ if (_fed_by && !_f_out_map.is_identity () && !_in_map.is_identity ()) {
+ return false;
+ }
if (_input && _sinks == _in && (!_fed_by || _f_out == _in)) {
return true;
}
@@ -2881,9 +2884,9 @@ ProcessorBox::setup_routing_feeds ()
}
} else {
(*i)->output_routing_icon.set_terminal(false);
- if (!(*i)->routing_icon.out_identity ()
- && !(*i)->routing_icon.in_identity ()
- && (*i)->routing_icon.can_coalesce ()) {
+ if ( !(*i)->routing_icon.out_identity ()
+ && !(*next)->routing_icon.in_identity ()
+ && (*next)->routing_icon.can_coalesce ()) {
(*i)->output_routing_icon.hide();
} else if (!(*i)->routing_icon.out_identity ()) {
(*i)->output_routing_icon.show();