diff options
-rw-r--r-- | gtk2_ardour/editor.h | 2 | ||||
-rw-r--r-- | gtk2_ardour/editor_mouse.cc | 2 | ||||
-rw-r--r-- | gtk2_ardour/editor_selection.cc | 6 |
3 files changed, 7 insertions, 3 deletions
diff --git a/gtk2_ardour/editor.h b/gtk2_ardour/editor.h index 177f862939..587c2c5b7c 100644 --- a/gtk2_ardour/editor.h +++ b/gtk2_ardour/editor.h @@ -652,7 +652,7 @@ class Editor : public PublicEditor, public PBD::ScopedConnectionList, public ARD void select_all_tracks (); void select_all_internal_edit (Selection::Operation); - bool set_selected_control_point_from_click (Selection::Operation op = Selection::Set, bool no_remove=false); + bool set_selected_control_point_from_click (bool press, Selection::Operation op = Selection::Set); void set_selected_track_from_click (bool press, Selection::Operation op = Selection::Set, bool no_remove=false); void set_selected_track_as_side_effect (Selection::Operation op); bool set_selected_regionview_from_click (bool press, Selection::Operation op = Selection::Set); diff --git a/gtk2_ardour/editor_mouse.cc b/gtk2_ardour/editor_mouse.cc index b789a424f1..bd5cdd3f8f 100644 --- a/gtk2_ardour/editor_mouse.cc +++ b/gtk2_ardour/editor_mouse.cc @@ -655,7 +655,7 @@ Editor::button_selection (ArdourCanvas::Item* /*item*/, GdkEvent* event, ItemTyp case ControlPointItem: set_selected_track_as_side_effect (op); if (doing_object_stuff() || (mouse_mode != MouseRange && mouse_mode != MouseObject)) { - set_selected_control_point_from_click (op, false); + set_selected_control_point_from_click (press, op); } break; diff --git a/gtk2_ardour/editor_selection.cc b/gtk2_ardour/editor_selection.cc index f788ef1f9d..fe93516063 100644 --- a/gtk2_ardour/editor_selection.cc +++ b/gtk2_ardour/editor_selection.cc @@ -314,12 +314,16 @@ Editor::set_selected_track_from_click (bool press, Selection::Operation op, bool } bool -Editor::set_selected_control_point_from_click (Selection::Operation op, bool /*no_remove*/) +Editor::set_selected_control_point_from_click (bool press, Selection::Operation op) { if (!clicked_control_point) { return false; } + if (!press) { + return true; + } + switch (op) { case Selection::Set: selection->set (clicked_control_point); |