Commit graph

133 commits

Author SHA1 Message Date
Lawrence Chen
5d463af122
Fix ghost terminal surface rebind after close (#808)
* Fix ghost terminal lifecycle rebind race

* Address review feedback on portal regression checks

* Address follow-up review feedback
2026-03-03 15:20:42 -08:00
Lawrence Chen
682a57d7db
Add workspace-churn typing lag regression and fix (#767)
* Add workspace-churn typing lag regression and fix

* Fix CI build for debug stress split calls

* Stabilize lag regression gate for low baseline latency
2026-03-02 19:06:50 -08:00
Austin Wang
a6f6485e3c
Fix Cmd+Tab activation ordering for cmux windows (#744) (#766) 2026-03-02 16:46:00 -08:00
Lawrence Chen
33242f8780
Fix menubar icon invisible in light mode (#741)
Set isTemplate = true on the menu bar icon image so macOS automatically
renders it black in light mode and white in dark mode. Changed the glyph
fill from white to black per template image convention.

Closes https://github.com/manaflow-ai/cmux/issues/737
2026-03-01 21:35:50 -08:00
Lawrence Chen
ae79d32494
Add inline VS Code open-directory command palette action (#685)
* Add inline VS Code directory command-palette action

* Harden inline VS Code serve-web lifecycle handling

* Add command-palette actions to stop/restart inline VS Code server

* Fix inline VS Code serve-web review comments

* Fix serve-web stop/start race and add regression test
2026-03-01 18:53:08 -08:00
Lawrence Chen
8378bbeaa2
Add dark mode app icon for macOS Sequoia (#702)
* Add dark mode app icon variant for macOS Sequoia

Adds dark appearance entries to the AppIcon asset catalog so macOS 15+
automatically shows a dark-background icon when the system is in dark
mode. The chevron gradient and glow are preserved by recompositing the
foreground over a dark background (#1C1C1E).

Includes a generation script (scripts/generate_dark_icon.py) that
derives the dark PNGs from the light originals.

* Add icon picker in Settings and fix dark icon quality

Use the Figma chevron layer (design/cmux-icon-chevron.png) composited
over a dark background for pixel-perfect results, no white halo or
darkened gradient. Falls back to mathematical recomposition if the Figma
layer is missing.

Add an "App Icon" picker to Settings (under Theme) with three visual
options: Automatic (follows system appearance via asset catalog dark
variants on macOS 15+), Light, and Dark. The selection persists via
UserDefaults and is applied on launch in AppDelegate.ensureApplicationIcon.

* Fix dark icon chevron scale to match light icon

The Figma export was ~25% larger than the repo icon. Scale the Figma
chevron layer by 0.80x before compositing so the chevron size matches
exactly between light and dark variants.

* Use enhanced glow for dark icon

Add a soft blue bloom around the chevron on the dark background using
two Gaussian blur passes (wide at r=25 and tight at r=12) composited
at reduced opacity beneath the sharp chevron. Makes the icon pop more
against the dark squircle.
2026-03-01 03:57:09 -08:00
Lawrence Chen
7143359c04
Stabilize UI keyboard/focus regressions and flaky omnibar/sidebar tests (#689) 2026-02-28 07:09:37 -08:00
Lawrence Chen
7916b2d418
Fix Xcode Cloud UI tests by running TestAction in Debug (#672)
* Set cmux TestAction to Debug for UI tests

* Broaden XCTest detection for debug launch gate

* Fix AutomationSocketUITests launch hang in CI

* Stabilize CI Swift package resolution for test jobs

* Stabilize Xcode Cloud UI test focus and socket handling

* Add Xcode Cloud pre-xcodebuild submodule bootstrap

* Harden Xcode Cloud bonsplit bootstrap fallback
2026-02-28 01:48:49 -08:00
Lawrence Chen
168e6b9b25
Auto-heal missing CLI listener socket (#679)
* Auto-heal missing CLI socket listener

* Add Sentry socket listener breadcrumbs and failure capture
2026-02-28 01:19:38 -08:00
Lawrence Chen
c3b55e2a9f
Fix Cmd+plus zoom handling on non-US layouts (#680) 2026-02-28 00:16:03 -08:00
Lawrence Chen
49e93e4b4c
Add command palette entries to install/uninstall cmux CLI in PATH (#626)
Adds CmuxCLIPathInstaller with symlink management at /usr/local/bin/cmux,
exposed via Cmd+Shift+P command palette (VS Code style). Install entry
shown when CLI is not in PATH, uninstall entry shown when it is.
Falls back to osascript admin privilege escalation when /usr/local/bin
is not user-writable. Uses attributesOfItem instead of fileExists to
correctly handle dangling symlinks from relocated app bundles.

Closes https://github.com/manaflow-ai/cmux/issues/618
2026-02-27 01:53:13 -08:00
Lawrence Chen
978341b228
Add zoom/maximize focused pane in splits (#634)
Cmd+Shift+Enter toggles zoom on the focused pane, expanding it to fill
the workspace. Splitting or creating new tabs auto-unzooms. Zoom state
shown as icon in sidebar tab. Includes bonsplit zoom toggle support.

Closes https://github.com/manaflow-ai/cmux/issues/136
2026-02-27 01:50:56 -08:00
Lawrence Chen
c70ac25eef
Sort TerminalDirectoryOpenTarget enum cases alphabetically (#628)
All four switch statements (case list, commandPaletteTitle,
commandPaletteKeywords, applicationBundlePathCandidates) are now
in consistent alphabetical order.
2026-02-27 01:18:52 -08:00
Lawrence Chen
e14c5a383f
Add Tower to command palette Open Directory targets (#627) 2026-02-27 00:42:42 -08:00
Lawrence Chen
24bc23630a
Disable Sentry sendDefaultPii to match anonymous telemetry label (#623)
sendDefaultPii=true auto-collects usernames, emails, and IPs, which
contradicts the "Send anonymous telemetry" setting label. Set to false.
2026-02-26 23:53:11 -08:00
Lawrence Chen
fa6a18c753
Add telemetry opt-out setting (#610)
Adds a "Send anonymous telemetry" toggle in Settings that lets users
disable Sentry crash reporting and PostHog analytics. The setting is
frozen at launch so toggling mid-session shows a restart hint. The hint
correctly clears if the user toggles back to the launch-time value.
2026-02-26 22:02:29 -08:00
ALPER
4cb278c854
Fix interaction crash in titlebar drag hit-testing (#600) 2026-02-26 20:02:53 -08:00
Lawrence Chen
fab2b8611d
Switch fullscreen shortcut to Cmd+Ctrl+F (#530) 2026-02-25 19:42:21 -08:00
Lawrence Chen
58af38a28d
Add cmux_hourly_active event for hourly retention cohorts (#514)
cmux_daily_active deduplicates by UTC date, so PostHog hourly retention
cohorts show 0s. Add a companion cmux_hourly_active event that fires at
most once per UTC hour, deduped via UserDefaults. No flush() after
hourly events (let them batch). The existing 30-minute timer provides
adequate hour-boundary coverage without changes.
2026-02-25 18:33:57 -08:00
Lawrence Chen
ede4e2fc99 Add Cmd+Enter shortcut to toggle fullscreen 2026-02-25 18:26:29 -08:00
Lawrence Chen
f38bc3b775
Move LaunchServices bundle registration off main thread (#513)
Fixes CMUXTERM-MACOS-DS
2026-02-25 18:02:00 -08:00
Austin Wang
501bb43d04
Merge pull request #496 from manaflow-ai/cmux/branch-inactive-computer-issue
Fix sidebar git branch updates after sleep/wake
2026-02-25 17:21:48 -08:00
Austin Wang
93a9e1a3b6
Merge pull request #495 from manaflow-ai/cmux/fix-chinese-ime-active
Allow Cmd shortcuts during IME composition
2026-02-25 17:21:08 -08:00
Lawrence Chen
381b0c1323 Reduce unchanged autosave snapshot churn
Fixes CMUXTERM-MACOS-RF

Fixes CMUXTERM-MACOS-H4
2026-02-25 16:28:09 -08:00
Lawrence Chen
9140371fcd guard devtools restore from unsafe first-responder churn 2026-02-25 15:59:49 -08:00
austinpower1258
213bda5e14 Fix sidebar git branch recovery after sleep/wake (#494) 2026-02-25 15:36:51 -08:00
austinpower1258
516ace4feb Allow Cmd shortcuts during IME composition
Cmd-based keyboard shortcuts (Cmd+T, Cmd+Shift+L, etc.) were blocked
while an IME had active composition (marked text), affecting Chinese
Pinyin, Japanese, Korean, and all other input methods. Since Cmd is a
system modifier never consumed by IME input sequences, exempt
Cmd-modified events from the three IME bypass points in the key event
chain.

Fixes #440

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-25 15:34:26 -08:00
Lawrence Chen
4890fe95fe Move autosave persistence off main thread
Fixes CMUXTERM-MACOS-EA

Fixes CMUXTERM-MACOS-DT
2026-02-25 15:03:26 -08:00
Lawrence Chen
575b53526c Restore safe webview resolution for field-editor responders 2026-02-25 13:39:22 -08:00
Lawrence Chen
0164c870f1 Harden Sentry guards for 0.61.0 issue burst 2026-02-25 13:24:20 -08:00
Lawrence Chen
62fffc7221 Use command palette flow for workspace rename shortcut 2026-02-25 05:12:49 -08:00
Lawrence Chen
2202b6081c Restore Cmd+Shift+R as rename workspace 2026-02-25 05:07:26 -08:00
Lawrence Chen
86bbe4c727 Alias Cmd+Shift+R to rename-tab command palette 2026-02-25 04:30:44 -08:00
Lawrence Chen
eaabaad3d3
Add Cmd+Option+W to close other pane tabs with confirmation (#475)
* Add Cmd+Option+W close-other-tabs confirmation

* Match close-other-tabs shortcut to Cmd+Option+T
2026-02-25 03:54:51 -08:00
Austin Wang
3cf1d2501f
Merge pull request #465 from manaflow-ai/cmux/terminal-persist-issue
Fix Cmd+W close for terminal+browser split (issue #464)
2026-02-24 21:59:37 -08:00
austinpower1258
17d8956789 Fix Cmd+W terminal close in terminal+browser split 2026-02-24 21:54:25 -08:00
Lawrence Chen
e69b88a19c
Merge pull request #463 from manaflow-ai/task-open-settings-via-cmdshiftp
Fix Open Settings from Command Palette
2026-02-24 21:33:56 -08:00
Lawrence Chen
7517454ea2 Always open custom settings window from palette path 2026-02-24 21:28:03 -08:00
Lawrence Chen
d0ce351856 Route palette settings through Cmd+, add debug logs 2026-02-24 21:15:01 -08:00
Lawrence Chen
cc06fb84e3 Fix command palette Open Settings action routing 2026-02-24 21:07:37 -08:00
Lawrence Chen
db86d3e301 Broaden CLI socket telemetry and add restart listener command 2026-02-24 20:38:05 -08:00
austinpower1258
ba73c6f90c Fix Cmd+N routing when browser events have windowNumber 0 2026-02-24 16:33:38 -08:00
Lawrence Chen
2877531ea2
Auto-focus omnibar when focusing blank browser surfaces (#448)
* Auto-focus omnibar when focusing blank browser surfaces

* Fix browser omnibar autofocus across pane and palette paths

* Fix Cmd+P switcher omnibar autofocus timing
2026-02-24 16:00:03 -08:00
austinpower1258
d255942f92 wip 2026-02-24 14:36:13 -08:00
austinpower1258
df9f1a1e6c Remove temporary Enter tracing instrumentation 2026-02-24 14:36:13 -08:00
austinpower1258
ab1368828b Fix browser Return/Enter routing and add enter trace logs 2026-02-24 14:36:13 -08:00
Lawrence Chen
06adb6228c Add drag transfer timing logs for bonsplit tabs 2026-02-24 14:35:10 -08:00
Lawrence Chen
710ed9b068 Fix Cmd+P/Cmd+Shift+P window routing (#413)
* Fix command palette shortcuts to stay window-scoped

* Fix cross-window command palette typing focus lock
2026-02-24 14:35:10 -08:00
Lawrence Chen
b059d0721c Reassert destination focus after cross-window tab moves 2026-02-24 14:35:09 -08:00
Lawrence Chen
58376c3fbc Handle moving the last surface out of a window 2026-02-24 14:35:09 -08:00