mirror of
https://github.com/heygen-com/hyperframes.git
synced 2026-10-30 17:27:09 +00:00
* fix(shader-transitions): a paused preview keeps the runtime's scene visibility After the transition prewarm, a paused preview showed a shader scene outside its window (a scene with a background covered the film until the next seek). The prewarm's seeks fired HyperShader's transition callbacks, which showed both scenes, and its teardown restored a stale visibility snapshot. The callbacks now skip while prewarming (the prewarm ends after its restore seek), the snapshot no longer includes visibility, and the settled state outside a transition only resets opacity. * fix(shader-transitions): the native scene capture draws a hidden scene visible The html-in-canvas capture copied the live scene with its inline styles and ignored forceVisible, so a scene the runtime had hidden captured blank once the prewarm stopped firing the transition callbacks. It now shows the copy and its timed clips the way the html2canvas path does. The preview test hides the scenes after the prewarm has taken its style snapshot, and the end callback guard and a dead prewarming check are gone. * test(shader-transitions): drop an unused scene and a timing note the markup does not set * fix(shader-transitions): transitions leave scene visibility to the runtime A transition now hides scenes outside its pair with opacity only, so a scene without timing attributes is not left hidden after a seek that skips events. The prewarm clears its flag in a finally, so a timeline callback that throws during the restore seek no longer stops every later seek. The preview test also checks that the prewarm ran. * fix(shader-transitions): the prewarm finishes when a callback throws while it restores A timeline callback that throws during the restore seek is warned about and the prewarm goes on to repaint, resume and fire its ready event, the way a failed capture already does.