From 42aa28d512d4ea77bef6159530b8bac9c7c872a0 Mon Sep 17 00:00:00 2001 From: Adam <2363879+adamdotdevin@users.noreply.github.com> Date: Wed, 18 Feb 2026 13:23:20 -0600 Subject: chore: cleanup (#14181) --- packages/app/src/components/prompt-input.tsx | 14 +++++--------- packages/app/src/components/session/session-header.tsx | 17 +---------------- 2 files changed, 6 insertions(+), 25 deletions(-) (limited to 'packages/app/src/components') 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 = (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 = (props) => { onPaste={handlePaste} onCompositionStart={() => setComposing(true)} onCompositionEnd={() => setComposing(false)} + onBlur={handleBlur} onKeyDown={handleKeyDown} classList={{ "select-text": true, diff --git a/packages/app/src/components/session/session-header.tsx b/packages/app/src/components/session/session-header.tsx index 912e449cf..3003d0514 100644 --- a/packages/app/src/components/session/session-header.tsx +++ b/packages/app/src/components/session/session-header.tsx @@ -257,27 +257,12 @@ export function SessionHeader() { ] as const }) - const checksReady = createMemo(() => { - if (platform.platform !== "desktop") return true - if (!platform.checkAppExists) return true - const list = apps() - return list.every((app) => exists[app.id] !== undefined) - }) - const [prefs, setPrefs] = persisted(Persist.global("open.app"), createStore({ app: "finder" as OpenApp })) const [menu, setMenu] = createStore({ open: false }) const canOpen = createMemo(() => platform.platform === "desktop" && !!platform.openPath && server.isLocal()) const current = createMemo(() => options().find((o) => o.id === prefs.app) ?? options()[0]) - createEffect(() => { - if (platform.platform !== "desktop") return - if (!checksReady()) return - const value = prefs.app - if (options().some((o) => o.id === value)) return - setPrefs("app", options()[0]?.id ?? "finder") - }) - const openDir = (app: OpenApp) => { const directory = projectDirectory() if (!directory) return @@ -398,7 +383,7 @@ export function SessionHeader() { {language.t("session.header.openIn")} { if (!OPEN_APPS.includes(value as OpenApp)) return setPrefs("app", value as OpenApp) -- cgit v1.2.3