(
: isDraggingOver
? "border-2 border-dashed border-vscode-focusBorder"
: "border border-transparent",
- "px-[8px]",
- "py-1.5",
- "pr-9",
+ "pl-2",
+ "py-2",
+ isEditMode ? "pr-20" : "pr-9",
"z-10",
"forced-color-adjust-none",
+ "rounded",
)}
style={{
color: "transparent",
@@ -1030,7 +1019,15 @@ export const ChatTextArea = forwardRef
(
updateHighlights()
}}
onFocus={() => setIsFocused(true)}
- onKeyDown={handleKeyDown}
+ onKeyDown={(e) => {
+ // Handle ESC to cancel in edit mode
+ if (isEditMode && e.key === "Escape" && !e.nativeEvent?.isComposing) {
+ e.preventDefault()
+ onCancel?.()
+ return
+ }
+ handleKeyDown(e)
+ }}
onKeyUp={handleKeyUp}
onBlur={handleBlur}
onPaste={handlePaste}
@@ -1054,7 +1051,7 @@ export const ChatTextArea = forwardRef(
"text-vscode-editor-font-size",
"leading-vscode-editor-line-height",
"cursor-text",
- "py-1.5 px-2",
+ "py-2 pl-2",
isFocused
? "border border-vscode-focusBorder outline outline-vscode-focusBorder"
: isDraggingOver
@@ -1071,7 +1068,7 @@ export const ChatTextArea = forwardRef(
"resize-none",
"overflow-x-hidden",
"overflow-y-auto",
- "pr-9",
+ isEditMode ? "pr-20" : "pr-9",
"flex-none flex-grow",
"z-[2]",
"scrollbar-none",
@@ -1080,7 +1077,7 @@ export const ChatTextArea = forwardRef(
onScroll={() => updateHighlights()}
/>
-
+
-
+
{isEditMode && (