summaryrefslogtreecommitdiff
path: root/gtk2_ardour/editor.cc
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2007-01-17 20:04:46 +0000
committerPaul Davis <paul@linuxaudiosystems.com>2007-01-17 20:04:46 +0000
commitc46b9078e3215abded4e67ae4f2a1a3d5190059b (patch)
tree0da925893f5c6d4d5cb0c2e6edac09d956b3ea8a /gtk2_ardour/editor.cc
parent729e6cc980ebfb17596e40c21a7550dd0f2c8420 (diff)
fix absolute fade in/out length during drag and odd select/deselect behaviour
git-svn-id: svn://localhost/ardour2/trunk@1340 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour/editor.cc')
-rw-r--r--gtk2_ardour/editor.cc12
1 files changed, 11 insertions, 1 deletions
diff --git a/gtk2_ardour/editor.cc b/gtk2_ardour/editor.cc
index d8c6d511b1..4efab64760 100644
--- a/gtk2_ardour/editor.cc
+++ b/gtk2_ardour/editor.cc
@@ -2921,7 +2921,17 @@ Editor::set_selected_track (TimeAxisView& view, Selection::Operation op, bool no
if (selection->selected (&view) && selection->tracks.size() == 1) {
/* no commit necessary */
} else {
- selection->set (&view);
+
+ /* reset track selection if there is only 1 other track
+ selected OR if no_remove is not set (its there to
+ prevent deselecting a multi-track selection
+ when clicking on an already selected track
+ for some reason.
+ */
+
+ if (selection->tracks.size() <= 1 || !no_remove) {
+ selection->set (&view);
+ }
commit = true;
}
break;