diff options
author | Campbell Barton <ideasman42@gmail.com> | 2010-11-09 07:56:52 +0300 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2010-11-09 07:56:52 +0300 |
commit | 7684901bb84966592694d0a268a2e93839fdbf54 (patch) | |
tree | b7240e04e6bef23fc0d21f4050043250651e22cd /source/blender/editors/space_sequencer | |
parent | a85ffa6ffdf9576e1c570068521e098b1d1334f2 (diff) |
bugfix [#24623] VSE strip animation data out of sync after moving using shift-s
also fixes snap on metastrips which was snapping nested strips.
Diffstat (limited to 'source/blender/editors/space_sequencer')
-rw-r--r-- | source/blender/editors/space_sequencer/sequencer_edit.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/source/blender/editors/space_sequencer/sequencer_edit.c b/source/blender/editors/space_sequencer/sequencer_edit.c index 286442ba08c..9d67cc2366c 100644 --- a/source/blender/editors/space_sequencer/sequencer_edit.c +++ b/source/blender/editors/space_sequencer/sequencer_edit.c @@ -1138,14 +1138,15 @@ static int sequencer_snap_exec(bContext *C, wmOperator *op) snap_frame= RNA_int_get(op->ptr, "frame"); - /* problem: contents of meta's are all shifted to the same position... */ - /* also check metas */ - SEQP_BEGIN(ed, seq) { + for(seq= ed->seqbasep->first; seq; seq= seq->next) { if (seq->flag & SELECT && !(seq->depth==0 && seq->flag & SEQ_LOCK) && seq_tx_test(seq)) { if((seq->flag & (SEQ_LEFTSEL+SEQ_RIGHTSEL))==0) { - seq->start= snap_frame-seq->startofs+seq->startstill; + /* simple but no anim update */ + /* seq->start= snap_frame-seq->startofs+seq->startstill; */ + + seq_translate(scene, seq, (snap_frame-seq->startofs+seq->startstill) - seq->start); } else { if(seq->flag & SEQ_LEFTSEL) { seq_tx_set_final_left(seq, snap_frame); @@ -1157,7 +1158,6 @@ static int sequencer_snap_exec(bContext *C, wmOperator *op) calc_sequence(scene, seq); } } - SEQ_END /* test for effects and overlap * dont use SEQP_BEGIN since that would be recursive */ |