From b04f89be519b6c3257cbe5707992b514771bce63 Mon Sep 17 00:00:00 2001 From: nick_m Date: Tue, 31 Jan 2017 03:03:45 +1100 Subject: make dragging a region from the list not crash. - its still a fake event, but we can at least get the snap correct. - playlist->add_region() parameters were whacky (for Playlist::add_region_internal()?) --- gtk2_ardour/editor_canvas_events.cc | 2 +- gtk2_ardour/editor_drag.cc | 4 +++- 2 files changed, 4 insertions(+), 2 deletions(-) (limited to 'gtk2_ardour') diff --git a/gtk2_ardour/editor_canvas_events.cc b/gtk2_ardour/editor_canvas_events.cc index 569f58c952..9a12ada070 100644 --- a/gtk2_ardour/editor_canvas_events.cc +++ b/gtk2_ardour/editor_canvas_events.cc @@ -1316,7 +1316,7 @@ Editor::drop_regions (const Glib::RefPtr& /*context*/, if ((boost::dynamic_pointer_cast (region_copy) != 0 && dynamic_cast (rtav) != 0) || (boost::dynamic_pointer_cast (region_copy) != 0 && dynamic_cast (rtav) != 0)) { _drags->set (new RegionInsertDrag (this, region_copy, rtav, pos), &event); - _drags->end_grab (0); + _drags->end_grab (&event); } } } diff --git a/gtk2_ardour/editor_drag.cc b/gtk2_ardour/editor_drag.cc index 6d87599e89..6a143eecd7 100644 --- a/gtk2_ardour/editor_drag.cc +++ b/gtk2_ardour/editor_drag.cc @@ -1982,7 +1982,9 @@ RegionInsertDrag::finished (GdkEvent * event, bool) _editor->begin_reversible_command (Operations::insert_region); playlist->clear_changes (); - playlist->add_region (_primary->region (), _last_position.frame, _editor->get_grid_music_divisions (event->button.state)); + _editor->snap_to_with_modifier (_last_position, event); + + playlist->add_region (_primary->region (), _last_position.frame, 1.0, false, _last_position.division); // Mixbus doesn't seem to ripple when inserting regions from the list: should we? yes, probably if (Config->get_edit_mode() == Ripple) { -- cgit v1.2.3