summaryrefslogtreecommitdiffhomepage
path: root/packages/app/src/components/prompt-input.tsx
diff options
context:
space:
mode:
authorAdam <[email protected]>2026-02-18 13:23:20 -0600
committerGitHub <[email protected]>2026-02-18 13:23:20 -0600
commit42aa28d512d4ea77bef6159530b8bac9c7c872a0 (patch)
tree5f009761db79701af778fa0270f837def3f09ff5 /packages/app/src/components/prompt-input.tsx
parentc6bd32000302c0cf607c1e91c536537e43848237 (diff)
downloadopencode-42aa28d512d4ea77bef6159530b8bac9c7c872a0.tar.gz
opencode-42aa28d512d4ea77bef6159530b8bac9c7c872a0.zip
chore: cleanup (#14181)
Diffstat (limited to 'packages/app/src/components/prompt-input.tsx')
-rw-r--r--packages/app/src/components/prompt-input.tsx14
1 files changed, 5 insertions, 9 deletions
diff --git a/packages/app/src/components/prompt-input.tsx b/packages/app/src/components/prompt-input.tsx
index 1ca085a42..b5a101994 100644
--- a/packages/app/src/components/prompt-input.tsx
+++ b/packages/app/src/components/prompt-input.tsx
@@ -403,15 +403,10 @@ export const PromptInput: Component<PromptInputProps> = (props) => {
const [composing, setComposing] = createSignal(false)
const isImeComposing = (event: KeyboardEvent) => event.isComposing || composing() || event.keyCode === 229
- createEffect(() => {
- if (!isFocused()) closePopover()
- })
-
- // Safety: reset composing state on focus change to prevent stuck state
- // This handles edge cases where compositionend event may not fire
- createEffect(() => {
- if (!isFocused()) setComposing(false)
- })
+ const handleBlur = () => {
+ closePopover()
+ setComposing(false)
+ }
const agentList = createMemo(() =>
sync.data.agent
@@ -1118,6 +1113,7 @@ export const PromptInput: Component<PromptInputProps> = (props) => {
onPaste={handlePaste}
onCompositionStart={() => setComposing(true)}
onCompositionEnd={() => setComposing(false)}
+ onBlur={handleBlur}
onKeyDown={handleKeyDown}
classList={{
"select-text": true,