Creating the first transform keyframe for a clip instance at frame N left the curve with a single keyframe, which Hold-extrapolates backward — so moving it at frame N also moved it on every earlier frame (frame 1). When SetKeyframeAction creates a brand-new curve for a clip instance and the clip already existed before `time`, also anchor a keyframe at the clip's start (its group visibility start, or timeline_start for movie clips) with the original value. Earlier frames now hold the original position and the move produces a proper tween from start to N. Also capture the clip instance's actual on-stage value when keying (its base transform), instead of a generic 0/identity default, so a new keyframe doesn't snap the clip to the origin. Adds VectorLayer::group_visibility_start and tests covering the anchor and the no-double-anchor case (keying at the clip's own start). |
||
|---|---|---|
| .. | ||
| src | ||
| tests | ||
| Cargo.toml | ||