From a4398ffb3b4e1ba2adf8680f954f3e961f7f9ca0 Mon Sep 17 00:00:00 2001 From: Alexandre Reyes Date: Sun, 1 Mar 2026 11:40:32 +0000 Subject: [PATCH 1/2] fix(app): enable Safari autocorrect in normal mode, disable in shell mode Previously autocorrect/autocapitalize/spellcheck were unconditionally disabled to prevent Safari from mangling shell commands (e.g. correcting `pwd` to "Password"). Now that the prompt has a dedicated shell mode toggle, these attributes are reactive: enabled in normal (chat) mode for natural text input and disabled in shell mode for commands. Closes #12555 --- packages/app/src/components/prompt-input.tsx | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/app/src/components/prompt-input.tsx b/packages/app/src/components/prompt-input.tsx index d16791a6111..bb0eea87a2e 100644 --- a/packages/app/src/components/prompt-input.tsx +++ b/packages/app/src/components/prompt-input.tsx @@ -1208,9 +1208,9 @@ export const PromptInput: Component = (props) => { aria-multiline="true" aria-label={placeholder()} contenteditable="true" - autocapitalize="off" - autocorrect="off" - spellcheck={false} + autocapitalize={store.mode === "shell" ? "off" : "sentences"} + autocorrect={store.mode === "shell" ? "off" : "on"} + spellcheck={store.mode !== "shell"} onInput={handleInput} onPaste={handlePaste} onCompositionStart={() => setComposing(true)} From 886feac8d6afc15479c579e894322eece427b84e Mon Sep 17 00:00:00 2001 From: Alexandre Reyes Date: Sun, 1 Mar 2026 12:53:42 +0000 Subject: [PATCH 2/2] refactor: check for normal mode explicitly per review feedback --- packages/app/src/components/prompt-input.tsx | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/app/src/components/prompt-input.tsx b/packages/app/src/components/prompt-input.tsx index bb0eea87a2e..1e6631d5baf 100644 --- a/packages/app/src/components/prompt-input.tsx +++ b/packages/app/src/components/prompt-input.tsx @@ -1208,9 +1208,9 @@ export const PromptInput: Component = (props) => { aria-multiline="true" aria-label={placeholder()} contenteditable="true" - autocapitalize={store.mode === "shell" ? "off" : "sentences"} - autocorrect={store.mode === "shell" ? "off" : "on"} - spellcheck={store.mode !== "shell"} + autocapitalize={store.mode === "normal" ? "sentences" : "off"} + autocorrect={store.mode === "normal" ? "on" : "off"} + spellcheck={store.mode === "normal"} onInput={handleInput} onPaste={handlePaste} onCompositionStart={() => setComposing(true)}