From be83948fab7b643634ede2403abdca27e6b45f29 Mon Sep 17 00:00:00 2001
From: Ariver <shanghai3168@gmail.com>
Date: Thu, 04 Jun 2026 01:09:14 +0800
Subject: [PATCH] Fix quick search early mouse dismiss
---
Apptag/ApptagApp.swift | 36 ++++++++++++++++++++++++++++++------
1 files changed, 30 insertions(+), 6 deletions(-)
diff --git a/Apptag/ApptagApp.swift b/Apptag/ApptagApp.swift
index c35007f..a70b9e2 100644
--- a/Apptag/ApptagApp.swift
+++ b/Apptag/ApptagApp.swift
@@ -430,7 +430,11 @@
}
if isQuickSearchOpen {
- NotificationCenter.default.post(name: .tagLauncherQuickSearchDismissRequested, object: nil)
+ NotificationCenter.default.post(
+ name: .tagLauncherQuickSearchDismissRequested,
+ object: nil,
+ userInfo: ["source": QuickSearchDismissSource.programmatic]
+ )
}
if !requiresForegroundOwnership {
@@ -987,7 +991,11 @@
isQuickSearchOpen = false
removeQuickSearchExternalMouseMonitor()
updateOverlayLevelForTextInput()
- NotificationCenter.default.post(name: .tagLauncherQuickSearchDismissRequested, object: nil)
+ NotificationCenter.default.post(
+ name: .tagLauncherQuickSearchDismissRequested,
+ object: nil,
+ userInfo: ["source": QuickSearchDismissSource.keyboard]
+ )
if shouldHideOverlayAfterDismiss {
quickSearchShouldHideOverlayOnClose = false
quickSearchOnlyOverlaySession = false
@@ -1526,7 +1534,11 @@
) { [weak self] _ in
DispatchQueue.main.async {
guard self?.isQuickSearchOpen == true else { return }
- NotificationCenter.default.post(name: .tagLauncherQuickSearchDismissRequested, object: nil)
+ NotificationCenter.default.post(
+ name: .tagLauncherQuickSearchDismissRequested,
+ object: nil,
+ userInfo: ["source": QuickSearchDismissSource.mouse]
+ )
}
}
}
@@ -1538,7 +1550,11 @@
) { [weak self] event in
guard let self, self.isQuickSearchOpen else { return event }
if event.window === self.overlayWindow {
- NotificationCenter.default.post(name: .tagLauncherQuickSearchDismissRequested, object: nil)
+ NotificationCenter.default.post(
+ name: .tagLauncherQuickSearchDismissRequested,
+ object: nil,
+ userInfo: ["source": QuickSearchDismissSource.mouse]
+ )
return nil
}
return event
@@ -1633,7 +1649,11 @@
updateOverlayLevelForTextInput()
quickSearchShouldHideOverlayOnClose = false
quickSearchOnlyOverlaySession = false
- NotificationCenter.default.post(name: .tagLauncherQuickSearchDismissRequested, object: nil)
+ NotificationCenter.default.post(
+ name: .tagLauncherQuickSearchDismissRequested,
+ object: nil,
+ userInfo: ["source": QuickSearchDismissSource.programmatic]
+ )
}
@objc private func switchLanguage(_ sender: NSMenuItem) {
@@ -1695,7 +1715,11 @@
}
if hit == self {
if quickSearchSuppressesBackdropDismiss {
- NotificationCenter.default.post(name: .tagLauncherQuickSearchDismissRequested, object: nil)
+ NotificationCenter.default.post(
+ name: .tagLauncherQuickSearchDismissRequested,
+ object: nil,
+ userInfo: ["source": QuickSearchDismissSource.backdrop]
+ )
return
}
if suppressBackdropDismiss {
--
Gitblit v1.9.3