Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
24 commits
Select commit Hold shift + click to select a range
f118fb7
feat: add global hotkey overlay panel
austinywang May 12, 2026
6b9fa12
Merge remote-tracking branch 'origin/main' into issue-2758-global-hot…
austinywang May 12, 2026
47e70c1
fix: register hotkey panel as auxiliary window
austinywang May 12, 2026
2c6d848
fix: isolate hotkey panel helpers on main actor
austinywang May 12, 2026
bdc6195
merge: resolve conflicts with main
austinywang May 23, 2026
386fd00
fix: preserve hotkey panel window identity
austinywang May 23, 2026
727e36d
fix: address hotkey panel review feedback
austinywang May 23, 2026
ea3c98a
fix: localize hotkey window title
austinywang May 23, 2026
454d53c
fix: complete global hotkey localizations
austinywang May 23, 2026
13f0b38
fix: localize hotkey shortcut web metadata
austinywang May 23, 2026
d23ff6f
fix: split hotkey panel helper boundaries
austinywang May 23, 2026
935687e
fix: share shortcut localization helper
austinywang May 23, 2026
86d0182
fix: defer hotkey panel config load
austinywang May 23, 2026
0a55ddc
fix: keep hotkey overlay isolated while hidden
austinywang May 23, 2026
0d51e0e
Merge remote-tracking branch 'origin/main' into issue-2758-global-hot…
austinywang May 24, 2026
a9bea73
fix: initialize hotkey panel config store upfront
austinywang May 24, 2026
ff0eee3
Merge remote-tracking branch 'origin/main' into issue-2758-global-hot…
austinywang May 26, 2026
556fe17
fix: restore active window after hotkey panel hides
austinywang May 26, 2026
b0e30df
fix: keep active context on restorable windows
austinywang May 26, 2026
901db99
Merge remote-tracking branch 'origin/main' into issue-2758-global-hot…
austinywang May 26, 2026
f815f8d
fix: ignore hotkey panel for close warning
austinywang May 26, 2026
16da7ea
Merge remote-tracking branch 'origin/main' into issue-2758-global-hot…
austinywang May 26, 2026
383a62f
Merge origin/main into issue-2758-global-hotkey-overlay
austinywang Jun 6, 2026
0738d27
fix: normalize project file
austinywang Jun 6, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ import SwiftUI

/// **Global Hotkey** section — mirrors the legacy in-app section:
/// one card with an Enable toggle and the system-wide chord recorder,
/// followed by a card note explaining macOS permissions.
/// followed by a card note explaining the native overlay panel.
///
/// The recorder reads and writes the same JSON-backed shortcut binding
/// the legacy app uses — `shortcuts.bindings["showHideAllWindows"]` —
Expand Down Expand Up @@ -40,7 +40,7 @@ public struct GlobalHotkeySection: View {
.accessibilityIdentifier("SettingsGlobalHotkeySection")
mainCard
SettingsCardNote(
String(localized: "settings.globalHotkey.note", defaultValue: "Use Command, Option, or Control with another key. No extra macOS permission is required.")
String(localized: "settings.globalHotkey.note", defaultValue: "Use Command, Option, or Control with another key. The overlay uses a native panel that can appear over full-screen apps.")
)
.accessibilityIdentifier("SettingsGlobalHotkeyNote")
}
Expand All @@ -56,8 +56,8 @@ public struct GlobalHotkeySection: View {
searchAnchorID: "setting:globalHotkey:enable-hotkey",
String(localized: "settings.globalHotkey.enable", defaultValue: "Enable System-Wide Hotkey"),
subtitle: enabled.current
? String(localized: "settings.globalHotkey.enable.subtitleOn", defaultValue: "Press the shortcut from any app to show or hide all cmux windows.")
: String(localized: "settings.globalHotkey.enable.subtitleOff", defaultValue: "Turn this on to show or hide all cmux windows from any app.")
? String(localized: "settings.globalHotkey.enable.subtitleOn", defaultValue: "Press the shortcut from any app to show or hide the cmux hotkey window.")
: String(localized: "settings.globalHotkey.enable.subtitleOff", defaultValue: "Turn this on to show or hide a cmux overlay from any app, including full-screen spaces.")
) {
Toggle("", isOn: Binding(get: { enabled.current }, set: { enabled.set($0) }))
.labelsHidden()
Expand All @@ -78,7 +78,7 @@ public struct GlobalHotkeySection: View {
VStack(alignment: .leading, spacing: 4) {
HStack(alignment: .center, spacing: 12) {
VStack(alignment: .leading, spacing: 2) {
Text(String(localized: "settings.globalHotkey.shortcut", defaultValue: "Show/Hide All Windows"))
Text(String(localized: "settings.globalHotkey.shortcut", defaultValue: "Show/Hide Hotkey Window"))
}
Spacer()
ShortcutRecorderView(
Expand Down
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -230,6 +230,7 @@ Command palette navigation shortcuts, including ⌃ P, are also customizable and

| Shortcut | Action |
|----------|--------|
| ⌃ ⌥ ⌘ . | Show/hide hotkey overlay |
| ⌘ ⇧ N | New window |
| ⌘ ⇧ O | Reopen previous session |
| ⌘ , | Settings |
Expand Down
Loading
Loading