Skip to content

fix: render native content and preserve mobile sheet themes - #255

Merged
tiensonqin merged 7 commits into
mainfrom
fix/native-dynamic-anchor
Oct 22, 2026
Merged

tiensonqin merged 7 commits into
mainfrom
fix/native-dynamic-anchor

Conversation

@tiensonqin

@tiensonqin tiensonqin commented Oct 22, 2026 •

Copy link
Copy Markdown
Collaborator

Bare dynamic content can emit stack.display=contents, which Apple rejects while rendering native query views. Use a box anchor so native backends can flatten its children.

Support scrollable Material tabs and container-width Android search fields. On Apple, render inline search as one native surface instead of an isolated rounded black input. Preserve sheet theme ancestry through extension nodes, including appearance overrides, propagate semantic colors into modal content, and use the themed background for navigation lists. Grouped list inputs use their native row surface. Android sheets honor a requested medium detent and retain the surrounding theme.

Validation:

  • Full dune runtest gate for the dynamic anchor regression.
  • Four new light/dark Android snapshots verify scrollable tabs and search width.
  • Actual iOS runtime regressions reproduce search overflow, system-gray dark sheets, and rounded black grouped inputs before the changes. They pass after the fixes, checking pixel colors, partial sheet height, native input style, visible content, dismissal, and the result-view action pipeline.
  • Mobile Android instrumentation passes five flows, including a regression that fails before and passes after medium-detent support, saved view switching, priority menus, typed edits, and lazy queries.

The full Android snapshot gate has six existing failures on the base: four outdated screenshots and two missing identity video fixtures. These reproduce without this patch, and the four legacy rendered images are byte-identical with and without the earlier responsive-control changes. Existing baselines are preserved.

Mount nested dynamic branches in a transparent box so native renderers accept their display property.
@tiensonqin
tiensonqin force-pushed the fix/native-dynamic-anchor branch from 52b3d0b to cceeb51 Compare October 22, 2026 09:51
@tiensonqin tiensonqin changed the title fix: use a native-compatible dynamic anchor fix: render dynamic native content and scrollable Android tabs Oct 22, 2026
@tiensonqin tiensonqin changed the title fix: render dynamic native content and scrollable Android tabs fix: render dynamic native content and responsive Android controls Oct 22, 2026
@tiensonqin tiensonqin changed the title fix: render dynamic native content and responsive Android controls fix: render native content and preserve mobile sheet themes Oct 22, 2026
@tiensonqin
tiensonqin merged commit 0c84383 into main Oct 22, 2026
8 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