Skip to content

fix: unify moving-surface image handoffs - #45

Merged
rdlabo merged 5 commits into
mainfrom
fix/moving-surface-entry-visibility
Nov 8, 2026
Merged

rdlabo merged 5 commits into
mainfrom
fix/moving-surface-entry-visibility

Conversation

@rdlabo

@rdlabo rdlabo commented Nov 8, 2026

Copy link
Copy Markdown
Contributor

Moving DOM surfaces used a separate image-transfer sequence that could expose live translucent controls beneath their Web images and misalign cached captures with later layout.

Use the common cover/painted and restore/accepted-update handoff for all surfaces, including temporary Native copies on iOS and Android. Add optional capture-relative anchor bounds and a generic layout adapter so placement can change without controlling visibility or capturing again during transfer. Keep active image ownership separate from cache reuse, and remove the unreleased staged-return API and its dedicated state.

Update the handoff documentation and regression tests for delayed acknowledgements, immediate reversal, capture-relative placement, and Android image-copy painting and retirement. No Modal, Ionic, or device-specific layout rules are added to Engine.

Validation: lint, build, projection browser tests, controls tests, native handoff tests, release tests, and package verification passed. Supervisor and independent acceptance reviews found no remaining blocking findings.

Transparent images can still briefly double-composite their edges during transfer; this change does not claim pixel-identical Liquid Glass rendering or resolve that remaining visual limitation.

@rdlabo
rdlabo merged commit 1c46c98 into main Nov 8, 2026
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant