summaryrefslogtreecommitdiff
path: root/gtk2_ardour/automation_region_view.cc
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2014-12-07 19:54:47 -0500
committerDavid Robillard <d@drobilla.net>2014-12-07 20:37:53 -0500
commitdff9e60c7f213277f6b4682cec919eb86ad66a93 (patch)
tree85820effd64b84058012ffda4ad54788fb9da4ce /gtk2_ardour/automation_region_view.cc
parent603748d68af1009fac47b284bf6f8815745586c7 (diff)
Draw region automation with draw in either mode.
Perhaps debatable if contents should be edited when not in internal mode whatsoever, but consistent with audio region gain and track automation. It's less of a problem with the draw tool than, say, object since drawing stuff is its entire purpose.
Diffstat (limited to 'gtk2_ardour/automation_region_view.cc')
-rw-r--r--gtk2_ardour/automation_region_view.cc9
1 files changed, 5 insertions, 4 deletions
diff --git a/gtk2_ardour/automation_region_view.cc b/gtk2_ardour/automation_region_view.cc
index a50044db19..61b0f1f39c 100644
--- a/gtk2_ardour/automation_region_view.cc
+++ b/gtk2_ardour/automation_region_view.cc
@@ -103,13 +103,14 @@ AutomationRegionView::canvas_group_event (GdkEvent* ev)
return false;
}
- if (!trackview.editor().internal_editing()) {
+ PublicEditor& e = trackview.editor ();
+
+ if (!trackview.editor().internal_editing() &&
+ e.current_mouse_mode() != Editing::MouseDraw) {
// not in internal edit mode, so just act like a normal region
return RegionView::canvas_group_event (ev);
}
- PublicEditor& e = trackview.editor ();
-
if (ev->type == GDK_BUTTON_PRESS && e.current_mouse_mode() == Editing::MouseObject) {
/* XXX: icky dcast to Editor */
@@ -122,7 +123,7 @@ AutomationRegionView::canvas_group_event (GdkEvent* ev)
e.drags()->motion_handler(ev, false);
return true;
- } else if (ev->type == GDK_BUTTON_RELEASE) {
+ } else if (ev->type == GDK_BUTTON_RELEASE && e.current_mouse_mode() == Editing::MouseDraw) {
if (e.drags()->end_grab (ev)) {
return true;
} else if (e.current_mouse_mode() != Editing::MouseDraw &&