From f5700808c5be9f509bd698f049d4faa5afde9f99 Mon Sep 17 00:00:00 2001 From: "opencode-agent[bot]" <219766164+opencode-agent[bot]@users.noreply.github.com> Date: Mon, 27 Jul 2026 14:08:00 -0400 Subject: [PATCH] fix(tui): preserve subagent list position (#39156) Co-authored-by: Kit Langton --- packages/tui/src/routes/session/composer/subagents-tab.tsx | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/packages/tui/src/routes/session/composer/subagents-tab.tsx b/packages/tui/src/routes/session/composer/subagents-tab.tsx index 4f3c976ddd..8a44b9f9ee 100644 --- a/packages/tui/src/routes/session/composer/subagents-tab.tsx +++ b/packages/tui/src/routes/session/composer/subagents-tab.tsx @@ -103,7 +103,8 @@ export function SubagentsTab(props: { sessionID: string }) { setStore("selected", next) const scrollCurrentIntoView = () => scrollToIndex(next, true) scrollCurrentIntoView() - requestAnimationFrame(scrollCurrentIntoView) + // The remounted scrollbox finishes layout on the next frame and resets its scroll position. + requestAnimationFrame(() => requestAnimationFrame(scrollCurrentIntoView)) } wasActive = true if (store.selected >= list.length) moveTo(Math.max(0, list.length - 1))