Просмотр исходного кода

Fix user_feedback word wrap issue; auto focus textarea when feedback is required

Saoud Rizwan 1 год назад
Родитель
Сommit
e4710e8d2c
2 измененных файлов с 13 добавлено и 0 удалено
  1. 2 0
      webview-ui/src/components/ChatRow.tsx
  2. 11 0
      webview-ui/src/components/ChatView.tsx

+ 2 - 0
webview-ui/src/components/ChatRow.tsx

@@ -125,6 +125,8 @@ const ChatRow: React.FC<ChatRowProps> = ({ message }) => {
 									color: "var(--vscode-badge-foreground)",
 									borderRadius: "3px",
 									padding: "8px",
+									whiteSpace: "pre-line",
+									wordWrap: "break-word"
 								}}>
 								<span>{message.text}</span>
 							</div>

+ 11 - 0
webview-ui/src/components/ChatView.tsx

@@ -255,6 +255,17 @@ const ChatView = ({ messages, isHidden }: ChatViewProps) => {
 		// eslint-disable-next-line react-hooks/exhaustive-deps
 	}, [isHidden])
 
+	useEffect(() => {
+		const timer = setTimeout(() => {
+			if (!textAreaDisabled) {
+				textAreaRef.current?.focus()
+			}
+		}, 50)
+		return () => {
+			clearTimeout(timer)
+		}
+	}, [textAreaDisabled])
+
 	return (
 		<div
 			style={{