macos: sync appearance when new windows are created (#13675)

For new windows to get their appearance synced, we need to call
`syncAppearance` after `super.showWindow(sender)`. All previous calls to
`syncAppearance` on `TerminalWindow` will be ignored because the window
needs to have `isVisible` set to `true`.

This regression was introduced by:
5368adcd29

It added `.dropFirst()` to the `focusedSurface` appearance publishers in
`TerminalController.swift` which removes the initial call of the
subscription.

Fixes https://github.com/ghostty-org/ghostty/issues/13324

(landed on the same fix as @rasitakyol found here:
https://github.com/ghostty-org/ghostty/pull/13341)
This commit is contained in:
Mitchell Hashimoto
2026-08-07 08:02:54 -07:00
committed by GitHub

View File

@@ -1160,6 +1160,8 @@ class TerminalController: BaseTerminalController, TabGroupCloseCoordinator.Contr
}
super.showWindow(sender)
syncAppearance()
}
// Shows the "+" button in the tab bar, responds to that click.