Skip to content

revert(mobile): Drop the thread-feed loading overlay - #1

Open
mwolson wants to merge 1 commit into
juliusmarminge:codex/pr3910-thread-feed-layoutfrom
mwolson:ios/pr3910-drop-loading-overlay
Open

mwolson wants to merge 1 commit into
juliusmarminge:codex/pr3910-thread-feed-layoutfrom
mwolson:ios/pr3910-drop-loading-overlay

Conversation

@mwolson

@mwolson mwolson commented Jul 28, 2026 •

Copy link
Copy Markdown

Summary

Removes the full-screen "Loading messages" overlay this branch adds over the
thread feed while a thread hydrates. Everything else in the layout and Markdown
work is untouched.

Opening this against codex/pr3910-thread-feed-layout rather than main
because the overlay only exists on this branch. It is a single commit on your
current head, so it should merge or cherry-pick cleanly whichever way you prefer
to take it.

Problem and Fix

Problem and Why it Happened Fix
A StyleSheet.absoluteFill placeholder titled "Loading messages" covers the feed whenever contentPresentation.kind === "loading". The UI wasn't intended to be released and ended up adding an extra spinner to the page. Drop the overlay block, the ThreadFeedPlaceholder loading prop it was the only caller of, and the ActivityIndicator that prop gated.

Deliberately not reverted

listMountState lands in the same commit and looks loading-related, but it is a
separate hydration fix: it reserves the filled list identity so detail arrival
does not replace the native list mid-transition, and the layout effect below it
re-reports the composer content inset regardless of whether the overlay draws.
Reverting it would reintroduce the remount that its comment describes, so it
stays.

Validation

vp check and the mobile package typecheck are clean, and apps/mobile tests
pass (95 files, 574 tests). Exercised on a signed Release build installed on a
physical iPhone.

pingdotgg#4036 pr3910-thread-feed-layout added a full-screen "Loading messages"
placeholder over the feed while a thread hydrates, with a spinner and the
detail line "Catching up this thread before showing the conversation." It
arrived as part of the layout work rather than as a deliberate design change,
and it reads as an awkward interstitial on a transition that is usually
instant.

Removes the overlay, the ThreadFeedPlaceholder `loading` prop it was the only
caller of, and the spinner that prop gated. ActivityIndicator keeps its other
two uses in this file.

Deliberately keeps `listMountState`, which lands in the same PR but is a
distinct hydration fix: it reserves the filled list identity so detail arrival
does not replace the native list mid-transition, and the layout effect below it
re-reports the composer content inset either way. That is correct whether or
not the overlay draws.
@github-actions github-actions Bot added vouch:unvouched PR author is not yet trusted in the VOUCHED list. size:S labels Jul 28, 2026
@mwolson
mwolson marked this pull request as ready for review July 28, 2026 03:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:S vouch:unvouched PR author is not yet trusted in the VOUCHED list.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant