authorgravatar for akole779@mtroyal.caAKolenda <akole779@mtroyal.ca> 2026-09-25 21:38:16-06:00
committergravatar for noreply@github.comGitHub <noreply@github.com> 2026-09-25 22:38:16-05:00
logecd3237b184e87af5d744a9dc28422cc1eb68e1a
treefbbd6f1a91fc0e8c39098020b61e688d93b17c6e
parent3b0a495b0e05d11dbf88ff2148e7c21b49508172
signature Signed by PGP key B5690EEEBB952194

fix(mobile): running threads open at the latest message (#13530)


1 files changed, 4 insertions(+), 1 deletions(-)

apps/mobile/src/features/threads/ThreadFeed.tsx+4-1
...@@ -2477,7 +2477,10 @@ export const ThreadFeed = memo(function ThreadFeed(props: ThreadFeedProps) {...@@ -2477,7 +2477,10 @@ export const ThreadFeed = memo(function ThreadFeed(props: ThreadFeedProps) {
2477 // content-inset override. Seed the fresh instance synchronously with the2477 // content-inset override. Seed the fresh instance synchronously with the
2478 // current overlay height before the scroll integration's next reaction;2478 // current overlay height before the scroll integration's next reaction;
2479 // on Android the declarative contentInset floor covers this same window.2479 // on Android the declarative contentInset floor covers this same window.
2480 const listMountKey = `${feedThreadKey}:${presentedFeed.length === 0 ? "empty" : "filled"}`;2480 // The thinking row a running thread shows while its messages load is not
2481 // content: the list must still remount, and so open at the end, when they
2482 // arrive.
2483 const listMountKey = `${feedThreadKey}:${presentedFeed.some((entry) => entry.type !== "thinking") ? "filled" : "empty"}`;
2481 useLayoutEffect(() => {2484 useLayoutEffect(() => {
2482 const bottom = props.contentInsetEndAdjustment.value;2485 const bottom = props.contentInsetEndAdjustment.value;
2483 if (bottom > 0) {2486 if (bottom > 0) {