cmux/Sources
martinezhermes 1235daff04
fix: apply background-opacity and background-blur to terminal rendering area
Two root causes for issue #879:

1. GhosttyNSView was missing makeBackingLayer(), so AppKit provided a
   generic CALayer as the view's backing layer. libghostty expects
   (view.layer as? CAMetalLayer) != nil to set up Metal rendering on
   the existing layer. Without a CAMetalLayer backing layer, the Metal
   surface defaulted to isOpaque=true, making the terminal area fully
   opaque regardless of background-opacity config.

   Fix: override makeBackingLayer() to return a CAMetalLayer with
   isOpaque=false and bgra8Unorm pixel format (matching standalone
   Ghostty's SurfaceView behavior).

2. ghostty_set_window_background_blur(app, window) is exposed in
   ghostty.h but was never called in cmux. Without this call the
   macOS window never gets the NSVisualEffectView blur backdrop that
   background-blur requires.

   Fix: add applyWindowBlurIfNeeded() on GhosttyApp that reads
   background-blur from config via ghostty_config_get and calls
   ghostty_set_window_background_blur when the value is non-zero.
   Called from applyBackgroundToKeyWindow() and
   applyWindowBackgroundIfActive() whenever the window is made
   transparent.

Fixes #879

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-20 10:16:27 +01:00
..
Find Add browser find focus debug logs (#1162) 2026-03-10 19:31:52 -07:00
Panels Fix browser image copy pasteboard data (#1850) 2026-03-19 22:20:09 -07:00
Update Show update-available banner automatically on launch (#1651) 2026-03-18 12:30:44 -07:00
AppDelegate.swift Merge origin/main into feat-hidden-titlebar-minimalism-reset 2026-03-18 04:05:43 -07:00
AppleScriptSupport.swift Update ghostty to v1.3.0 (#1142) 2026-03-09 21:32:54 -07:00
Backport.swift Resync terminal portals after sidebar changes (#1253) 2026-03-12 02:46:30 -07:00
BrowserWindowPortal.swift Stabilize SSH remote flow after merging main 2026-03-16 23:57:48 -07:00
cmuxApp.swift Add optional single-click focus for inactive panes (#1796) 2026-03-19 01:01:10 -07:00
ContentView.swift Fix browser pane file drops hanging on Uploading (#1843) 2026-03-19 21:23:11 -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: apply background-opacity and background-blur to terminal rendering area 2026-03-20 10:16:27 +01:00
KeyboardLayout.swift Fix Dvorak Cmd+C colliding with notifications shortcut (#762) 2026-03-05 18:32:42 -08:00
KeyboardShortcutSettings.swift Narrow shortcut settings notifications 2026-03-15 22:09:37 -07:00
NotificationsPage.swift Add Jump to Latest to the notifications popover (#1167) 2026-03-10 19:30:17 -07:00
PortScanner.swift Avoid main-thread hops for explicit socket scope 2026-02-20 23:58:47 -08:00
PostHogAnalytics.swift Flush PostHog hourly active events immediately (#934) 2026-03-05 04:00:04 -08: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 Merge remote-tracking branch 'origin/main' into pr-ssh-stack-main 2026-03-13 17:56:38 -07:00
TabManager.swift Fix sidebar workspace PR status display and false positives (#1636) 2026-03-17 22:57:12 -07:00
TerminalController.swift feat: add set-color/clear-color to workspace-action CLI (#1833) 2026-03-19 22:34:31 -07:00
TerminalNotificationStore.swift fix: preserve custom commands for focused notifications 2026-03-20 01:11:10 -07:00
TerminalView.swift Add sidebar blur effect with withinWindow blending (#9) 2026-02-04 03:04:45 -08:00
TerminalWindowPortal.swift Fix laggy terminal sync during sidebar drags (#1598) 2026-03-18 01:28:11 -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 re-entrant exclusive-access crash in drag handle hit test (#771) 2026-03-02 19:20:14 -08:00
WindowToolbarController.swift Reapply "Merge pull request #239 from manaflow-ai/issue-151-ssh-remote-port-proxying" 2026-03-12 15:54:26 -07:00
Workspace.swift Make remote sidebar directory canonicalization preserve live paths 2026-03-19 01:23:53 -07:00
WorkspaceContentView.swift Gate workspace chrome from minimal mode 2026-03-16 23:15:22 -07:00