cmux/Sources
Lawrence Chen 543481ce12
Fix transparent background flash during sidebar toggle (#2378)
* Fix transparent background flash during sidebar toggle

Move terminal background rendering from the Metal GPU pass to a
CALayer (backgroundView). The GPU bg_color pass is disabled via a
new Ghostty config flag (macos-background-from-layer). The CALayer
resizes instantly with its parent NSView, eliminating the 3-5 frame
gap where the desktop was visible through the transparent window
during sidebar toggles and layout transitions.

Also simplifies the titlebar and sidebar opacity formulas since
there is now a single background layer instead of two stacked
semi-transparent layers.

* Document macos-background-from-layer fork change

* Pin GhosttyKit checksum for macos-background-from-layer

* Address review feedback: fix fallback config path, inline identity wrapper

- Inject macos-background-from-layer in the fallback config path too,
  preventing alpha double-stacking when user config is invalid
- Inline panelBackgroundFillColor (now an identity function) at its
  two call sites and remove the wrapper

* Address adversarial review: skip fullscreen bg draw call explicitly

The bg_color uniform alpha is still zeroed for cell compositing (so
transparent cells pass through to the CALayer), but the fullscreen
background fill draw step is now explicitly skipped instead of relying
on alpha=0 as a no-op.

* Pin GhosttyKit checksum for bg draw-call skip

---------

Co-authored-by: Lawrence Chen <lawrencecchen@users.noreply.github.com>
2026-03-30 19:08:32 -07:00
..
Find Fix command palette focus after terminal find (#2089) 2026-03-25 17:27:54 -07:00
Panels Add React Grab inject button to browser toolbar (#2373) 2026-03-30 18:00:45 -07:00
Update Fix update error details dialog overflow (#2359) 2026-03-30 03:05:48 -07:00
AppDelegate.swift Keep cmux browser Find shortcuts authoritative (#2356) 2026-03-30 03:16:10 -07:00
AppIconDockTilePlugin.swift Fix Dock persistence for manual app icons (#2360) 2026-03-30 03:34:35 -07:00
AppleScriptSupport.swift fix: read working directory from panelDirectories instead of TerminalPanel 2026-03-20 04:15:44 +08:00
Backport.swift Resync terminal portals after sidebar changes (#1253) 2026-03-12 02:46:30 -07:00
BrowserWindowPortal.swift Fix browser pane hangs from redundant portal refreshes (#2353) 2026-03-30 03:51:18 -07:00
cmuxApp.swift Add React Grab inject button to browser toolbar (#2373) 2026-03-30 18:00:45 -07:00
CmuxConfig.swift Validate workspace color during cmux.json decode (#2112) 2026-03-24 22:58:27 -07:00
CmuxConfigExecutor.swift Sanitize command before execution, not just display (#2122) 2026-03-25 00:28:30 -07:00
CmuxDirectoryTrust.swift feat: cmux.json for custom commands (#2011) 2026-03-24 22:28:46 -07:00
ContentView.swift Fix transparent background flash during sidebar toggle (#2378) 2026-03-30 19:08:32 -07:00
GhosttyConfig.swift Add configurable sidebar tint color with light/dark mode support (#1465) 2026-03-15 15:48:57 -07:00
GhosttyTerminalView.swift Fix transparent background flash during sidebar toggle (#2378) 2026-03-30 19:08:32 -07:00
KeyboardLayout.swift fix: prevent Japanese IME confirmation Enter from executing command (#2075) 2026-03-24 22:24:13 -07:00
KeyboardShortcutSettings.swift Add React Grab inject button to browser toolbar (#2373) 2026-03-30 18:00:45 -07:00
NotificationsPage.swift Add Jump to Latest to the notifications popover (#1167) 2026-03-10 19:30:17 -07:00
PortScanner.swift Fix workspace creation crash after restore (#1985) 2026-03-25 00:04:03 -07:00
PostHogAnalytics.swift Flush PostHog hourly active events immediately (#934) 2026-03-05 04:00:04 -08:00
RemoteRelayZshBootstrap.swift Support image drag-and-drop into SSH terminals (#1838) 2026-03-20 18:31:19 -07:00
SentryHelper.swift Auto-heal missing CLI listener socket (#679) 2026-02-28 01:19:38 -08:00
SessionPersistence.swift fix: skip identical session autosave writes (#1732) 2026-03-18 03:24:40 -07:00
SidebarSelectionState.swift Implement session persistence pass 1 with multi-window restore 2026-02-22 15:39:59 -08:00
SocketControlSettings.swift Skip quit confirmation for tagged DEV builds (#2288) 2026-03-28 03:57:25 -07:00
TabManager.swift Merge pull request #2355 from manaflow-ai/issue-2352-shift-enter-tmux 2026-03-30 18:10:57 -07:00
TerminalController.swift Fix tmux Shift+Enter state reporting 2026-03-30 03:49:00 -07:00
TerminalImageTransfer.swift Fix SSH image transfer followups (#1904) 2026-03-20 21:32:21 -07:00
TerminalNotificationStore.swift Fix remote proxy notification spam with cooldown, backoff, and SSH keepalive (#2325) (#2330) 2026-03-29 18:07:39 -07:00
TerminalSSHSessionDetector.swift Use pane TTY fallback for tmux Shift+Enter 2026-03-30 04:15:23 -07:00
TerminalView.swift Add sidebar blur effect with withinWindow blending (#9) 2026-02-04 03:04:45 -08:00
TerminalWindowPortal.swift Fix #2210: coalesce portal sync to latest geometry (#2214) 2026-03-29 17:55:40 -07:00
UITestRecorder.swift Fix frozen terminals after split churn (#12) 2026-02-13 16:45:31 -08:00
WindowAccessor.swift Polish browser suggestions, focus, and tagged reload flow 2026-02-14 21:33:28 -08:00
WindowDecorationsController.swift Refine settings/about titlebar styling and controls alignment 2026-02-14 02:11:35 -08:00
WindowDragHandleView.swift Fix titlebar double-click zoom handling (#2130) 2026-03-25 02:15:15 -07:00
WindowToolbarController.swift Fix minimal mode toggle not updating titlebar state (#2218) 2026-03-27 20:25:51 -07:00
Workspace.swift Gate Shift+Enter newline remap to tmux 2026-03-30 02:55:19 -07:00
WorkspaceContentView.swift Fix minimal mode tab bar disappearing in fullscreen (#2375) 2026-03-30 16:41:05 -07:00