diff options
author | Carl Hetherington <carl@carlh.net> | 2010-09-21 23:23:07 +0000 |
---|---|---|
committer | Carl Hetherington <carl@carlh.net> | 2010-09-21 23:23:07 +0000 |
commit | dbd1e1f7b83a18b27a92d6e1b809561684db8f15 (patch) | |
tree | 97521f04d3c3bf6a8bafe4e047c6a9ac60ea6312 /gtk2_ardour/editor_drag.cc | |
parent | 90e73a3a6dc196f8295291eca7e67e85595b82d4 (diff) |
Don't update region list during region trim. Fixes #3467.
git-svn-id: svn://localhost/ardour2/branches/3.0@7825 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour/editor_drag.cc')
-rw-r--r-- | gtk2_ardour/editor_drag.cc | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/gtk2_ardour/editor_drag.cc b/gtk2_ardour/editor_drag.cc index f79df6bb42..c4040c346d 100644 --- a/gtk2_ardour/editor_drag.cc +++ b/gtk2_ardour/editor_drag.cc @@ -1547,6 +1547,10 @@ TrimDrag::start_grab (GdkEvent* event, Gdk::Cursor* cursor) _editor->show_verbose_time_cursor (pf, 10); break; } + + for (list<DraggingView>::const_iterator i = _views.begin(); i != _views.end(); ++i) { + i->view->region()->suspend_property_changes (); + } } void @@ -1594,7 +1598,6 @@ TrimDrag::motion (GdkEvent* event, bool first_move) rv->fake_set_opaque(false); rv->enable_display (false); rv->region()->clear_changes (); - rv->region()->suspend_property_changes (); AudioRegionView* const arv = dynamic_cast<AudioRegionView*> (rv); @@ -1705,6 +1708,10 @@ TrimDrag::finished (GdkEvent* event, bool movement_occurred) /* no mouse movement */ _editor->point_trim (event, adjusted_current_frame (event)); } + + for (list<DraggingView>::const_iterator i = _views.begin(); i != _views.end(); ++i) { + i->view->region()->resume_property_changes (); + } } void @@ -1720,6 +1727,10 @@ TrimDrag::aborted () if (_have_transaction) { _editor->undo (); } + + for (list<DraggingView>::const_iterator i = _views.begin(); i != _views.end(); ++i) { + i->view->region()->resume_property_changes (); + } } MeterMarkerDrag::MeterMarkerDrag (Editor* e, ArdourCanvas::Item* i, bool c) |