mac: ⌘F moves to the menu bar — the hidden button lost the responder fight (#294)
Find Chat… lives under File now: the view-level shortcut stopped firing whenever a greedy first responder (a mini-app's WKWebView, a text view) swallowed the key equivalent — menu items win the same way ⌘C does. The active surface consumes the tick, expanding the collapsed rail before focusing Search.
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
1 file changed,
+8
−0
ios/LChatMac/LChatMacApp.swift+8 −0
diff --git a/ios/LChatMac/LChatMacApp.swift b/ios/LChatMac/LChatMacApp.swift| index 4bdfd1f..631176a 100644 |
| --- a/ios/LChatMac/LChatMacApp.swift |
| +++ b/ios/LChatMac/LChatMacApp.swift |
| @@ -62,6 +62,12 @@ struct LChatMacApp: App { |
| CommandGroup(after: .newItem) { |
| Button("Add Chat…") { app.showAdd = true } |
| .keyboardShortcut("n", modifiers: [.command, .shift]) |
| + // A MENU shortcut, deliberately: a view-level hidden button |
| + // lost ⌘F whenever a greedy first responder (a mini-app's |
| + // WKWebView, a text view) swallowed the key equivalent — menu |
| + // items win the same way ⌘C does. |
| + Button("Find Chat…") { app.focusSearchTick += 1 } |
| + .keyboardShortcut("f", modifiers: .command) |
| } |
| // ⌘1…⌘9 jump straight to a server, like browser/Slack tabs. |
| CommandMenu("Servers") { |
| @@ -164,6 +170,8 @@ final class MacAppState: ObservableObject { |
| // the palette requests a thread by writing nativeOpenThread, which the |
| // active NativeChatView consumes. |
| @Published var nativeChats: [NativePaletteChat] = [] |
| + // Bumped by File ▸ Find Chat (⌘F) — the active surface focuses its search. |
| + @Published var focusSearchTick = 0 |
| // A "open this thread AND land on this message" request (search hits): |
| // the matching feed consumes it once its history contains the target. |
| @Published var nativeJump: NativeJumpTarget? |