summaryrefslogtreecommitdiff
path: root/gtk2_ardour/editor_drag.cc
diff options
context:
space:
mode:
authornick_m <mainsbridge@gmail.com>2015-10-05 04:32:03 +1100
committernick_m <mainsbridge@gmail.com>2015-10-20 00:53:29 +1100
commit986a3a97752279c4a1713f5e4ca2a5fe97142d78 (patch)
tree0f26296faf294c2a94c181d7671571cb7dec3a81 /gtk2_ardour/editor_drag.cc
parent4dcd22fadf862b179d79435adf7d83d8be29cf47 (diff)
Don't snap if fine adjust modifier used.
- permits non-alt modifier for fine adjust.
Diffstat (limited to 'gtk2_ardour/editor_drag.cc')
-rw-r--r--gtk2_ardour/editor_drag.cc4
1 files changed, 3 insertions, 1 deletions
diff --git a/gtk2_ardour/editor_drag.cc b/gtk2_ardour/editor_drag.cc
index 2574ba803e..450bfbb154 100644
--- a/gtk2_ardour/editor_drag.cc
+++ b/gtk2_ardour/editor_drag.cc
@@ -4112,10 +4112,12 @@ ControlPointDrag::motion (GdkEvent* event, bool first_motion)
{
double dx = _drags->current_pointer_x() - last_pointer_x();
double dy = current_pointer_y() - last_pointer_y();
+ bool need_snap = true;
if (Keyboard::modifier_state_equals (event->button.state, ArdourKeyboard::fine_adjust_modifier ())) {
dx *= 0.1;
dy *= 0.1;
+ need_snap = false;
}
/* coordinate in pixels relative to the start of the region (for region-based automation)
@@ -4148,7 +4150,7 @@ ControlPointDrag::motion (GdkEvent* event, bool first_motion)
framepos_t cx_frames = _editor->pixel_to_sample (cx) + snap_delta (event->button.state);
- if (!_x_constrained) {
+ if (!_x_constrained && need_snap) {
_editor->snap_to_with_modifier (cx_frames, event);
}