From ac8617017ae94bf17cdd5b1f6e38e1434bcb2c54 Mon Sep 17 00:00:00 2001 From: nick_m Date: Wed, 24 Aug 2016 03:41:42 +1000 Subject: [PATCH] Don't attempt to snap to the current musical grid when dragging tempi. --- gtk2_ardour/editor_drag.cc | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/gtk2_ardour/editor_drag.cc b/gtk2_ardour/editor_drag.cc index 98ccf4a6a2..0c046e56ab 100644 --- a/gtk2_ardour/editor_drag.cc +++ b/gtk2_ardour/editor_drag.cc @@ -3355,11 +3355,21 @@ TempoMarkerDrag::motion (GdkEvent* event, bool first_move) show_verbose_cursor_text (strs.str()); } else if (_movable && !_real_section->locked_to_meter()) { - const framepos_t pf = adjusted_current_frame (event); + framepos_t pf; + + if (_editor->snap_musical()) { + /* we can't snap to a grid that we are about to move. + * gui_move_tempo() will sort out snap using the supplied beat divisions. + */ + pf = adjusted_current_frame (event, false); + } else { + pf = adjusted_current_frame (event); + } + TempoMap& map (_editor->session()->tempo_map()); /* snap to beat is 1, snap to bar is -1 (sorry) */ - int sub_num = _editor->get_grid_music_divisions (event->button.state); + const int sub_num = _editor->get_grid_music_divisions (event->button.state); map.gui_move_tempo (_real_section, pf, sub_num);