@@ -103,6 +103,7 @@ const ChatTextArea = forwardRef<HTMLTextAreaElement, ChatTextAreaProps>(
103103 const [ intendedCursorPosition , setIntendedCursorPosition ] = useState < number | null > ( null )
104104 const contextMenuContainerRef = useRef < HTMLDivElement > ( null )
105105 const [ isEnhancingPrompt , setIsEnhancingPrompt ] = useState ( false )
106+ const [ isFocused , setIsFocused ] = useState ( false )
106107
107108 // Fetch git commits when Git is selected or when typing a hash
108109 useEffect ( ( ) => {
@@ -379,6 +380,7 @@ const ChatTextArea = forwardRef<HTMLTextAreaElement, ChatTextAreaProps>(
379380 if ( ! isMouseDownOnMenu ) {
380381 setShowContextMenu ( false )
381382 }
383+ setIsFocused ( false )
382384 } , [ isMouseDownOnMenu ] )
383385
384386 const handlePaste = useCallback (
@@ -537,6 +539,10 @@ const ChatTextArea = forwardRef<HTMLTextAreaElement, ChatTextAreaProps>(
537539 backgroundColor : "var(--vscode-input-background)" ,
538540 margin : "10px 15px" ,
539541 padding : "8px" ,
542+ outline : "none" ,
543+ border : "1px solid" ,
544+ borderColor : isFocused ? "var(--vscode-focusBorder)" : "transparent" ,
545+ borderRadius : "2px" ,
540546 } }
541547 onDrop = { async ( e ) => {
542548 e . preventDefault ( )
@@ -647,6 +653,7 @@ const ChatTextArea = forwardRef<HTMLTextAreaElement, ChatTextAreaProps>(
647653 handleInputChange ( e )
648654 updateHighlights ( )
649655 } }
656+ onFocus = { ( ) => setIsFocused ( true ) }
650657 onKeyDown = { handleKeyDown }
651658 onKeyUp = { handleKeyUp }
652659 onBlur = { handleBlur }
@@ -665,6 +672,7 @@ const ChatTextArea = forwardRef<HTMLTextAreaElement, ChatTextAreaProps>(
665672 autoFocus = { true }
666673 style = { {
667674 width : "100%" ,
675+ outline : "none" ,
668676 boxSizing : "border-box" ,
669677 backgroundColor : "transparent" ,
670678 color : "var(--vscode-input-foreground)" ,
0 commit comments