diff options
Diffstat (limited to 'gtk2_ardour/editor_mixer.cc')
-rw-r--r-- | gtk2_ardour/editor_mixer.cc | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/gtk2_ardour/editor_mixer.cc b/gtk2_ardour/editor_mixer.cc index b9a711c2ec..2154da5d70 100644 --- a/gtk2_ardour/editor_mixer.cc +++ b/gtk2_ardour/editor_mixer.cc @@ -185,6 +185,7 @@ Editor::create_editor_mixer () current_mixer_strip->set_embedded (true); current_mixer_strip->signal_enter_notify_event().connect (sigc::mem_fun(*this, &Editor::mixer_strip_enter_event )); + current_mixer_strip->signal_leave_notify_event().connect (sigc::mem_fun(*this, &Editor::mixer_strip_leave_event )); } @@ -195,6 +196,17 @@ Editor::mixer_strip_enter_event (GdkEventCrossing *ev) return false; } +bool +Editor::mixer_strip_leave_event (GdkEventCrossing *ev) +{ + //if we have moved outside our strip, but not into a child view, then deselect ourselves + if ( !(ev->detail == GDK_NOTIFY_INFERIOR) ) { + current_mixer_strip->set_selected(false); + } + + return false; +} + void Editor::set_selected_mixer_strip (TimeAxisView& view) { |