diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2010-04-15 20:42:05 +0000 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2010-04-15 20:42:05 +0000 |
commit | dc815ea8e84d28fc01a68225c2ece4399c4a9c7e (patch) | |
tree | 27954a7b74ea3df1ca87d0ece20ad15a6f46f6be /libs/ardour/audioregion.cc | |
parent | d2beb38ea9fb39dbfb8667784bd248b32d171cbf (diff) |
forward-port from 2.X commits 5827-6000 including
git-svn-id: svn://localhost/ardour2/branches/3.0@6914 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs/ardour/audioregion.cc')
-rw-r--r-- | libs/ardour/audioregion.cc | 18 |
1 files changed, 12 insertions, 6 deletions
diff --git a/libs/ardour/audioregion.cc b/libs/ardour/audioregion.cc index be6cce251a..15110e4869 100644 --- a/libs/ardour/audioregion.cc +++ b/libs/ardour/audioregion.cc @@ -948,15 +948,18 @@ AudioRegion::recompute_at_end () _envelope->set_max_xval (_length); _envelope->thaw (); + if (_left_of_split) { + set_default_fade_out (); + _left_of_split = false; + } else if (_fade_out->back()->when > _length) { + _fade_out->extend_to (_length); + send_change (PropertyChange (Properties::fade_out)); + } + if (_fade_in->back()->when > _length) { _fade_in->extend_to (_length); send_change (PropertyChange (Properties::fade_in)); } - - if (_fade_out->back()->when > _length) { - _fade_out->extend_to (_length); - send_change (PropertyChange (Properties::fade_out)); - } } void @@ -966,7 +969,10 @@ AudioRegion::recompute_at_start () _envelope->truncate_start (_length); - if (_fade_in->back()->when > _length) { + if (_right_of_split) { + set_default_fade_in (); + _right_of_split = false; + } else if (_fade_in->back()->when > _length) { _fade_in->extend_to (_length); send_change (PropertyChange (Properties::fade_in)); } |