fix: auto-focus terminal on new session creation#19
Merged
Conversation
When a new session is created as the active session, the terminal initialization RAF fires before the focus effect can run, leaving terminal.focus() unexecuted. Add explicit focus call after terminal init when session is already active. Fixes: - Terminal not focused after new session creation (need to click to input) - Keyboard input blocked until manual click on terminal area Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Auto-focus the terminal when a new session is created and becomes the active session. This ensures keyboard input works immediately without requiring a manual click on the terminal area.
Problem
When a new session is created as the active session:
requestAnimationFrameisActiveis alreadytrue, butterminalRef.currentis stillnullisActivenever changes after mountThis caused users to need to click the terminal before they could input anything, including responding to Claude's folder trust prompts.
Solution
Add an explicit
terminal.focus()call at the end of the initialization RAF when the session is already active. This handles the case where a terminal is created for an already-active session.Testing
What Changed
src/renderer/components/SessionView/TerminalView.tsx: Added focus call after terminal initialization when session is already active