From cc41cd4598a66b40d685672ea23e30c5b1975871 Mon Sep 17 00:00:00 2001
From: Ariver <shanghai3168@gmail.com>
Date: Sat, 30 May 2026 15:39:47 +0800
Subject: [PATCH] Fix quick search focus and hidden overlay routing

---
 Apptag/QuickSearch.swift |   18 +++++++++++++-----
 1 files changed, 13 insertions(+), 5 deletions(-)

diff --git a/Apptag/QuickSearch.swift b/Apptag/QuickSearch.swift
index aab4e8f..e8eb530 100644
--- a/Apptag/QuickSearch.swift
+++ b/Apptag/QuickSearch.swift
@@ -1524,11 +1524,17 @@
     }
 
     private func requestFocus(_ field: QuickSearchNativeTextField) {
-        DispatchQueue.main.async { [weak field] in
-            guard let field,
-                  field.window?.firstResponder !== field
-            else { return }
-            field.window?.makeFirstResponder(field)
+        for delay in [0.0, 0.03, 0.08, 0.16] {
+            DispatchQueue.main.asyncAfter(deadline: .now() + delay) { [weak field] in
+                guard let field,
+                      let window = field.window,
+                      window.isVisible,
+                      window.firstResponder !== field
+                else { return }
+                window.makeKeyAndOrderFront(nil)
+                window.orderFrontRegardless()
+                window.makeFirstResponder(field)
+            }
         }
     }
 
@@ -1578,6 +1584,8 @@
 private final class QuickSearchNativeTextField: NSTextField {
     var onCommand: ((QuickSearchCommand) -> Void)?
 
+    override var acceptsFirstResponder: Bool { true }
+
     override func keyDown(with event: NSEvent) {
         switch Int(event.keyCode) {
         case kVK_UpArrow:

--
Gitblit v1.9.3