Skip to content

Pick up the list and image perf fixes from both combined branches - #69

Closed
simonhamp wants to merge 1 commit into
mainfrom
chore/lock-mobile-ui-149
Closed

simonhamp wants to merge 1 commit into
mainfrom
chore/lock-mobile-ui-149

Conversation

@simonhamp

@simonhamp simonhamp commented Oct 22, 2026 •

Copy link
Copy Markdown
Member

Bumps both frameworks on their combined/dev-null-app branches, to get the list and image performance work that Simon's local phone builds (b4 to b8) have been running into the app's real lock.

  • nativephp/mobile 0f0587b -> 0b9e996: mobile-air #569 (don't publish a frame the native side already has), #571 (size a flex row from its flexed children's real height, draft), #564 (measure each flex child once per proposal, open), #576 (only put an iOS node through the modifiers it uses) and #575 (keep a list's unchanged rows when it gains or loses rows). They're cherry-picked onto combined, not a merge of mobile-air main, so main's build tooling changes (binary checksum and signature checks, skipped build steps) stay out for now. The result is byte-identical to build b8's mobile-air.
  • nativephp/mobile-ui beb6a5b -> 73dcd1c: mobile-ui main merged into combined. That brings the final #149 (local images loaded off the main thread, with #151's display-size decoding), #152 (only redraw the list rows that changed) and the final #145, plus everything else merged to main since #144. Combined still carries text-outline (#142) and the Android sheet handle on top of main.

Nothing changes in the app's own code. All 1,193 tests pass.

What the frameworks add for the app's PHP

Only additions: list row-color, list item options from #66 and #116, and text input options from #69, #70 and #112 (submit-label, next-focus, content type). Nothing the app uses was renamed or removed.

For review

  • #571 and #564 aren't merged upstream. #571 is a draft. If either changes before merging, combined needs the new version.
  • mobile-ui #153 makes image fit draw the same on iOS and Android, following CSS object-fit. The app's fit=2 (cover) images with a size don't change. A fit=1 (contain) image whose shape differs from its frame is now centred in it on iOS instead of sitting top-left.
  • mobile-ui's merge took main's version of the four files that conflicted (both list renderers and both image files). Every combined change in those files is now on main in its final form.

🤖 Generated with Claude Code

Bumps nativephp/mobile-ui on combined/dev-null-app from ebbc94b to beb6a5b,
which adds NativePHP/mobile-ui#149. Avatars and commit images drawn from
ImageCache's files no longer stat or decode on the main thread while the
Log scrolls.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@simonhamp simonhamp closed this Oct 22, 2026
@simonhamp simonhamp changed the title Pick up mobile-ui's off-main-thread local image loading Pick up the list and image perf fixes from both combined branches Oct 22, 2026
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