From 543cf677ab65e8efbc2091b85fd79344cdfdad63 Mon Sep 17 00:00:00 2001 From: David Kaya Date: Mon, 13 Apr 2026 12:20:17 +0200 Subject: [PATCH] fix: resolve Quick Prompt popup visibility and model picker issues - Replace translucent glass background with solid surface-1 color; backdrop-filter does not work with transparent BrowserWindows on Windows, leaving the panel nearly invisible - Add data-quickprompt body attribute to quickprompt.html and CSS overrides to ensure body/root are truly transparent, eliminating the visible rectangle behind the rounded panel - Remove overflow-hidden from qp-panel so model selector dropdown is no longer clipped; the dropdown was positioned absolute and rendered entirely outside the panel bounds - Change ModelSelector to open downward (top-full) instead of upward (bottom-full) for natural command-bar flow - Update dropdown animation direction to match downward opening - Increase blur handler delay to 200ms for safer dropdown interactions Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- src/main/windows/createQuickPromptWindow.ts | 6 ++--- .../components/quick-prompt/ModelSelector.tsx | 2 +- .../quick-prompt/QuickPromptApp.tsx | 2 +- src/renderer/quickprompt.html | 2 +- src/renderer/styles.css | 25 +++++++++++++------ 5 files changed, 24 insertions(+), 13 deletions(-) diff --git a/src/main/windows/createQuickPromptWindow.ts b/src/main/windows/createQuickPromptWindow.ts index 5a9edb4..51a4ec0 100644 --- a/src/main/windows/createQuickPromptWindow.ts +++ b/src/main/windows/createQuickPromptWindow.ts @@ -44,14 +44,14 @@ export function createQuickPromptWindow(): BrowserWindowType { // Hide on blur — but only if the window itself loses focus (not from // devtools or transient focus changes during show/hide). window.on('blur', () => { - // Small delay: avoid hiding during transient focus shifts (e.g. model - // selector dropdown causing a brief blur → refocus cycle). + // Longer delay: avoid hiding during transient focus shifts when + // interacting with model selector dropdown or other UI elements. setTimeout(() => { if (window.isVisible() && !window.isFocused()) { window.webContents.send('quick-prompt:hide'); window.hide(); } - }, 100); + }, 200); }); return window; diff --git a/src/renderer/components/quick-prompt/ModelSelector.tsx b/src/renderer/components/quick-prompt/ModelSelector.tsx index 676b280..684fc47 100644 --- a/src/renderer/components/quick-prompt/ModelSelector.tsx +++ b/src/renderer/components/quick-prompt/ModelSelector.tsx @@ -90,7 +90,7 @@ export function ModelSelector({ return (
diff --git a/src/renderer/components/quick-prompt/QuickPromptApp.tsx b/src/renderer/components/quick-prompt/QuickPromptApp.tsx index 21a8bc8..32caad9 100644 --- a/src/renderer/components/quick-prompt/QuickPromptApp.tsx +++ b/src/renderer/components/quick-prompt/QuickPromptApp.tsx @@ -171,7 +171,7 @@ export function QuickPromptApp() { return (
Aryx Quick Prompt - +