From 248d7e59809dc4a18beff1cace01b9fa8862cb61 Mon Sep 17 00:00:00 2001 From: Paul Davis Date: Tue, 5 Oct 2021 10:43:24 -0600 Subject: [PATCH] prevent trim-dragging that doesn't change region duration from incorrectly resetting fades --- gtk2_ardour/editor_drag.cc | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/gtk2_ardour/editor_drag.cc b/gtk2_ardour/editor_drag.cc index ae664a4c2a..4905df2770 100644 --- a/gtk2_ardour/editor_drag.cc +++ b/gtk2_ardour/editor_drag.cc @@ -3269,7 +3269,7 @@ TrimDrag::finished (GdkEvent* event, bool movement_occurred) */ i->view->trim_front_ending (); } - if (_preserve_fade_anchor) { + if (_preserve_fade_anchor && i->anchored_fade_length) { AudioRegionView* arv = dynamic_cast (i->view); if (arv) { boost::shared_ptr ar (arv->audio_region()); @@ -3284,7 +3284,7 @@ TrimDrag::finished (GdkEvent* event, bool movement_occurred) } } else if (_operation == EndTrim) { for (list::const_iterator i = _views.begin(); i != _views.end(); ++i) { - if (_preserve_fade_anchor) { + if (_preserve_fade_anchor && i->anchored_fade_length) { AudioRegionView* arv = dynamic_cast (i->view); if (arv) { boost::shared_ptr ar (arv->audio_region()); @@ -6791,6 +6791,7 @@ AutomationRangeDrag::aborted (bool) DraggingView::DraggingView (RegionView* v, RegionDrag* parent, TimeAxisView* itav) : view (v) , initial_time_axis_view (itav) + , anchored_fade_length (0) { TimeAxisView* tav = &v->get_time_axis_view(); if (tav) {