authorgravatar for me@t3.ggTheo Browne <me@t3.gg> 2026-09-08 14:40:54-07:00
committergravatar for noreply@github.comGitHub <noreply@github.com> 2026-09-08 14:40:54-07:00
logde545c41737aca08359244b7778ab52e55934f17
tree269217a8e2263eee6c0b0a5d4a5306c246d956db
parent3faeee49ac67dfd9534369f1e1c627c0356b75ac
signature Signed by PGP key B5690EEEBB952194

fix(web): stop the bar under the composer popping in after threads load (#10727)

Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com>

3 files changed, 6 insertions(+), 8 deletions(-)

apps/web/src/components/BranchToolbar.tsx+2-2
......@@ -12,7 +12,7 @@ import { memo, useCallback, useEffect, useLayoutEffect, useMemo, useRef, useStat
1212
1313import { useComposerDraftStore, type DraftId } from "../composerDraftStore";
1414import { EnvironmentMachineIcon } from "./EnvironmentMachineIcon";
15import { useProject, useThread, useThreadShellsForProjectRefs } from "../state/entities";
15import { useProject, useThreadShell, useThreadShellsForProjectRefs } from "../state/entities";
1616import {
1717 type EnvMode,
1818 type EnvironmentOption,
......@@ -465,7 +465,7 @@ export const BranchToolbar = memo(function BranchToolbar({
465465 const draftThread = useComposerDraftStore((store) =>
466466 draftId ? store.getDraftSession(draftId) : store.getDraftThreadByRef(threadRef),
467467 );
468 const serverThread = useThread(threadRef, { waitForShell: draftThread !== null });
468 const serverThread = useThreadShell(threadRef);
469469 const setDraftThreadContext = useComposerDraftStore((store) => store.setDraftThreadContext);
470470 const activeProjectRef = serverThread
471471 ? scopeProjectRef(serverThread.environmentId, serverThread.projectId)
apps/web/src/components/BranchToolbarBranchSelector.tsx+2-2
......@@ -27,7 +27,7 @@ import { readLocalApi } from "../localApi";
2727import { useOpenPrLink } from "../lib/openPullRequestLink";
2828import { shouldLoadNextBranchPageAfterScroll } from "../state/paginatedBranches";
2929import { usePaginatedBranches } from "../state/queries";
30import { useProject, useThread } from "../state/entities";
30import { useProject, useThreadShell } from "../state/entities";
3131import { useEnvironmentQuery } from "../state/query";
3232import { threadEnvironment } from "../state/threads";
3333import { useAtomCommand } from "../state/use-atom-command";
......@@ -119,7 +119,7 @@ export function BranchToolbarBranchSelector({
119119 const draftThread = useComposerDraftStore((store) =>
120120 draftId ? store.getDraftSession(draftId) : store.getDraftThreadByRef(threadRef),
121121 );
122 const serverThread = useThread(threadRef, { waitForShell: draftThread !== null });
122 const serverThread = useThreadShell(threadRef);
123123 const serverSession = serverThread?.session ?? null;
124124 const setDraftThreadContext = useComposerDraftStore((store) => store.setDraftThreadContext);
125125
apps/web/src/components/GitActionsControl.tsx+2-4
......@@ -87,7 +87,7 @@ import {
8787 useVcsInitAction,
8888 useVcsPullAction,
8989} from "~/lib/sourceControlActions";
90import { useThread } from "~/state/entities";
90import { useThreadShell } from "~/state/entities";
9191import { useEnvironmentQuery } from "~/state/query";
9292import { serverEnvironment } from "~/state/server";
9393import { sourceControlEnvironment } from "~/state/sourceControl";
......@@ -950,9 +950,7 @@ export default function GitActionsControl({
950950 ? store.getDraftThreadByRef(activeThreadRef)
951951 : null,
952952 );
953 const activeServerThread = useThread(activeThreadRef, {
954 waitForShell: activeDraftThread !== null,
955 });
953 const activeServerThread = useThreadShell(activeThreadRef);
956954 const setDraftThreadContext = useComposerDraftStore((store) => store.setDraftThreadContext);
957955 const [isCommitDialogOpen, setIsCommitDialogOpen] = useState(false);
958956 const [dialogCommitMessage, setDialogCommitMessage] = useState("");