summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gtk2_ardour/port_matrix_column_labels.cc2
-rw-r--r--gtk2_ardour/port_matrix_grid.cc17
-rw-r--r--gtk2_ardour/port_matrix_row_labels.cc2
3 files changed, 14 insertions, 7 deletions
diff --git a/gtk2_ardour/port_matrix_column_labels.cc b/gtk2_ardour/port_matrix_column_labels.cc
index 1679b321df..ba27120b57 100644
--- a/gtk2_ardour/port_matrix_column_labels.cc
+++ b/gtk2_ardour/port_matrix_column_labels.cc
@@ -270,7 +270,7 @@ void
PortMatrixColumnLabels::mouseover_changed (PortMatrixNode const &)
{
clear_channel_highlights ();
- if (_body->mouseover().column.bundle) {
+ if (_body->mouseover().column.bundle && _body->mouseover().row.bundle) {
add_channel_highlight (_body->mouseover().column);
}
}
diff --git a/gtk2_ardour/port_matrix_grid.cc b/gtk2_ardour/port_matrix_grid.cc
index 50740cae63..4682f6f3c3 100644
--- a/gtk2_ardour/port_matrix_grid.cc
+++ b/gtk2_ardour/port_matrix_grid.cc
@@ -420,9 +420,10 @@ PortMatrixGrid::button_release (double x, double y, int b, uint32_t t)
} else {
PortMatrixNode const n = position_to_node (x / grid_spacing(), y / grid_spacing());
- PortMatrixNode::State const s = get_association (n);
-
- set_association (n, toggle_state (s));
+ if (n.row.bundle && n.column.bundle) {
+ PortMatrixNode::State const s = get_association (n);
+ set_association (n, toggle_state (s));
+ }
}
require_render ();
@@ -619,9 +620,15 @@ PortMatrixGrid::nodes_on_line (int x0, int y0, int x1, int y1) const
for (int x = x0; x <= x1; ++x) {
if (steep) {
- p.push_back (position_to_node (y, x));
+ PortMatrixNode n = position_to_node (y, x);
+ if (n.row.bundle && n.column.bundle) {
+ p.push_back (n);
+ }
} else {
- p.push_back (position_to_node (x, y));
+ PortMatrixNode n = position_to_node (x, y);
+ if (n.row.bundle && n.column.bundle) {
+ p.push_back (n);
+ }
}
err += derr;
diff --git a/gtk2_ardour/port_matrix_row_labels.cc b/gtk2_ardour/port_matrix_row_labels.cc
index 7b4383155d..8d7410d319 100644
--- a/gtk2_ardour/port_matrix_row_labels.cc
+++ b/gtk2_ardour/port_matrix_row_labels.cc
@@ -364,7 +364,7 @@ void
PortMatrixRowLabels::mouseover_changed (PortMatrixNode const &)
{
clear_channel_highlights ();
- if (_body->mouseover().row.bundle) {
+ if (_body->mouseover().column.bundle && _body->mouseover().row.bundle) {
add_channel_highlight (_body->mouseover().row);
}
}