Conversation
f636dbb to
40ed430
Compare
3136f38 to
524ebd2
Compare
40ed430 to
f2b7277
Compare
This stack of pull requests is managed by Graphite. Learn more about stacking. |
|
Pushed What changed:
Browser verification on
|
|
Pushed What changed:
Sweep on
Checks:
|
32b280b to
01490dc
Compare
ff5671d to
d8b86c5
Compare
01490dc to
51543f3
Compare
a663ef6 to
ae1dadb
Compare
51543f3 to
3c945a9
Compare
ae1dadb to
b05d52b
Compare
3c945a9 to
d383e94
Compare
b05d52b to
612b92a
Compare
jrusso1020
left a comment
There was a problem hiding this comment.
Focused fix, clean. Edge-snap math in resolveSeekPercent is well-bounded (Math.min(0.5, 8/width) prevents snap zones from overlapping on tiny bars) and the tests cover the cases that actually matter (invalid width, left-edge, right-edge, mid-range). Core player.test.ts pins the "seek to safe duration without snapping back a frame" behavior, which is the real root cause.
One non-blocking thing to eyeball in Studio if you haven't already: NLELayout.tsx flips the tracks container from overflow-y-auto to overflow-hidden. That's fine as long as vertical track scrolling happens at a different parent now (looks like it does, based on the new outer container), but worth a quick sanity check with many tracks.
Approved for alpha.
— Rames Jusso
cb7f3dd to
5590cdc
Compare
99313b8 to
4fc0758
Compare
4fc0758 to
8dcb732
Compare
5590cdc to
0ba56f9
Compare
8dcb732 to
8763cb8
Compare

Summary
Make end-of-timeline scrubbing settle cleanly instead of landing a few pixels short and visually jumping.
Root Cause
Near the right edge, the scrubber math could stop just short of the exact end of the seek bar. That left the thumb and time text to settle after the drag, which read as a jump.
Fix
Verification
bun test packages/studio/src/player/components/PlayerControls.test.tsbun run --filter @hyperframes/studio typecheckbunx oxlint packages/core/src/runtime/player.test.ts packages/studio/src/player/components/PlayerControls.tsx packages/studio/src/player/components/PlayerControls.test.tsbunx oxfmt --check packages/core/src/runtime/player.test.ts packages/studio/src/player/components/PlayerControls.tsx packages/studio/src/player/components/PlayerControls.test.tsBrowser Proof
agent-browserStack