fix(mobile): the thread feed keeps its place when its width changes

Folding or unfolding the iPhone Duo, rotating, or resizing a split pane
re-wraps every row at once. LegendList re-measures them over the next
commits and judges the new geometry: the growth carried a following
feed past its near-end threshold, so it showed earlier text and only
jumped back later, and a reader's row kept its top while the text
inside it moved by screens.

The feed now records what the reader is looking at before any row is
re-measured: on iOS from its own layout event, which arrives before the
row measurements, and on Android from the commit that changes the
width. A following feed pins the end once and lifts the end threshold
until the rows settle. A reader returns, after the settle, to the same
share of the row under the header. A drag, a send, a disclosure toggle,
or a thread change cancels the restore, and the list's initial
positioning is left alone until it loads.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
84df3e96d5Julius Marminge committed on 10/21/2026, 11:43:05 PMparente0152b4

Checks

All checks passed
3 files changedLine totals unavailable