diff --git a/apps/code/src/renderer/features/terminal/components/Terminal.tsx b/apps/code/src/renderer/features/terminal/components/Terminal.tsx index 8ab3e8093..9fe149d88 100644 --- a/apps/code/src/renderer/features/terminal/components/Terminal.tsx +++ b/apps/code/src/renderer/features/terminal/components/Terminal.tsx @@ -51,6 +51,7 @@ export function Terminal({ if (!terminalRef.current) return; terminalManager.attach(sessionId, terminalRef.current); + terminalManager.focus(sessionId); return () => { terminalManager.detach(sessionId); @@ -111,12 +112,13 @@ export function Terminal({ }; }, [sessionId, onReady, onExit]); - const handleClick = useCallback(() => { + // mousedown so the xterm textarea is focused before the browser's native focus shift, not after. + const handleMouseDown = useCallback(() => { terminalManager.focus(sessionId); }, [sessionId]); return ( - +