Slip Edit in UI#301
Conversation
|
Usage: Press T or select the double arrow next to the cut tool to enter slip mode :-) |
|
tested it out. looks pretty good! i think something I'd want in terms of UX(similar to Davinci): when dragging, I wasn't sure where I can go. In Davinci, it shows you a "ghost" frame that tells you the position of the current trim part. It also shows you which direction you can go with the green and red. ref: https://www.youtube.com/watch?v=WLOaont2TCs I can also add a follow up PR, if that's too much for this PR (I'll let you decide if you want to include it)
|
|
|
||
| struct SlipDrag { | ||
| let clipId: String | ||
| let trackIndex: Int |
There was a problem hiding this comment.
can we double check if trackIndex is used at all?
from ai review:
trackIndex is never read: mouse-drag uses grabFrame and the delta caps, mouse-up and the draw
path use clipId/deltaFrames/propagateToLinked. Can be dropped from the struct and the init call
site.
There was a problem hiding this comment.
So... checking on the lsp, references that us it are in TimelineInputController.swift ;-)
So removing it gives a compile issues...
There was a problem hiding this comment.
maybe I was a bit fast on that call, checked again and removed it :-)
|
I will get back to this in the next 2 days :-) |
|
@s00500 it should be good once ci is fixed (just need to rebase i think) |
Signed-off-by: Lukas Bachschwell <lukas@lbsfilm.at>
Signed-off-by: Lukas Bachschwell <lukas@lbsfilm.at>
…stay active Signed-off-by: Lukas Bachschwell <lukas@lbsfilm.at>
Signed-off-by: Lukas Bachschwell <lukas@lbsfilm.at>
Signed-off-by: Lukas Bachschwell <lukas@lbsfilm.at>
Signed-off-by: Lukas Bachschwell <lukas@lbsfilm.at>
Signed-off-by: Lukas Bachschwell <lukas@lbsfilm.at>
|
Rebased on main :-) |
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes using high effort and found 1 potential issue.
❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.
Reviewed by Cursor Bugbot for commit 76b9fa4. Configure here.
Signed-off-by: Lukas Bachschwell <lukas@lbsfilm.at>
Signed-off-by: Lukas Bachschwell <lukas@lbsfilm.at>
|
Awesome!!! Thanks! |


(Closes #300)
Note
Medium Risk
Touches core trim/slip timeline logic and clip mutation paths; behavior is well-tested but mistakes could corrupt clip trims or A/V sync when linked.
Overview
Adds slip editing so users can shift which source frames play inside a clip without moving it on the timeline. The new Trim (T) tool mode keeps edge trims on the handles and starts a slip drag from the clip body; Escape cancels an in-progress slip without committing.
commitSlipand related helpers movetrimStart/trimEndin opposite directions with clamps for speed, linked partners, nested sequences (effectiveTrimEnd), and exclusions for multicam, image, and text clips. The timeline shows a live source-range overlay while dragging, and the viewer shows an FCP-style two-up (SlipTwoUpView) of start/end source frames during the drag.Toolbar and T shortcut select the tool; unit tests cover slip behavior, propagation, and undo.
Reviewed by Cursor Bugbot for commit 0a58e34. Bugbot is set up for automated code reviews on this repo. Configure here.