diff options
author | Brecht Van Lommel <brechtvanlommel@gmail.com> | 2018-09-19 17:17:24 +0300 |
---|---|---|
committer | Brecht Van Lommel <brechtvanlommel@gmail.com> | 2018-09-19 17:19:26 +0300 |
commit | d5e29f41403cede826f230224e713fade6156d32 (patch) | |
tree | cb65ff56a085b9a8f8e4515984e29787ff0f15a1 /source/blender/editors/animation/keyframes_edit.c | |
parent | edb6f192ee9e0ceb86adbaa2cb2df00499e4c9b6 (diff) |
Fix T56697: missing viewport update after keyframe edits in animation editors.
It was updating during transform, but not a final time after keyframes get
reordered or merged.
Diffstat (limited to 'source/blender/editors/animation/keyframes_edit.c')
-rw-r--r-- | source/blender/editors/animation/keyframes_edit.c | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/source/blender/editors/animation/keyframes_edit.c b/source/blender/editors/animation/keyframes_edit.c index 1bbfa6cc979..1e5bc4f1cd0 100644 --- a/source/blender/editors/animation/keyframes_edit.c +++ b/source/blender/editors/animation/keyframes_edit.c @@ -416,16 +416,14 @@ void ANIM_editkeyframes_refresh(bAnimContext *ac) filter = ANIMFILTER_DATA_VISIBLE; ANIM_animdata_filter(ac, &anim_data, filter, ac->data, ac->datatype); - /* loop over F-Curves that are likely to have been edited, and check them */ + /* Loop over F-Curves that are likely to have been edited, and tag them to + * ensure the keyframes are in order and handles are in a valid position. */ for (ale = anim_data.first; ale; ale = ale->next) { - FCurve *fcu = ale->key_data; - - /* make sure keyframes in F-Curve are all in order, and handles are in valid positions */ - sort_time_fcurve(fcu); - calchandles_fcurve(fcu); + ale->update |= ANIM_UPDATE_DEPS | ANIM_UPDATE_HANDLES | ANIM_UPDATE_ORDER; } /* free temp data */ + ANIM_animdata_update(ac, &anim_data); ANIM_animdata_freelist(&anim_data); } |