Skip to content

Add Supacode Terminal Theme toggle with glass background#321

Merged
sbertix merged 1 commit into
mainfrom
sbertix/supacode-terminal-theme
May 14, 2026
Merged

Add Supacode Terminal Theme toggle with glass background#321
sbertix merged 1 commit into
mainfrom
sbertix/supacode-terminal-theme

Conversation

@sbertix
Copy link
Copy Markdown
Collaborator

@sbertix sbertix commented May 14, 2026

Summary

  • Rename the appearance toggle from "Sync with Terminal" to "Supacode Terminal Theme" and replace the inline hint row with a subtitle that points to ghostty +list-themes when the toggle is off.
  • Default fresh installs to on; existing settings files predate the key and stay false so upgrading users don't get a surprise appearance change.
  • Bundled theme config now also writes background-opacity = 0.9 and background-blur = macos-glass-regular, applied at the window level via WindowChromeApplier (theme load runs before the override layer so the surface itself stays at alpha 0) for native look.

Test plan

  • make build-app succeeds.
  • make test passes (incl. new roundTripsExplicitTerminalThemeSyncEnabled, freshInstallDefaultsTerminalThemeSyncEnabledToTrue, and the extended legacy-decode assertion).
  • Launch the app on a fresh ~/Library/Application Support/Supacode/settings.json and confirm the toggle defaults to on with the glass background.
  • Launch with an existing settings file that lacks the key and confirm the toggle stays off and the window honors the user's Ghostty config theme.
  • Toggle the setting on/off at runtime and confirm the window tint follows.

@sbertix sbertix enabled auto-merge (squash) May 14, 2026 22:11
Renames the appearance toggle from "Sync with Terminal" to "Supacode
Terminal Theme" and replaces the inline hint row with a subtitle that
points to `ghostty +list-themes` when the toggle is off.

Fresh installs default the toggle to on; existing settings files
predate the key and stay `false` so upgrading users don't get a
surprise appearance change. The bundled theme config also writes
`background-opacity = 0.9` and `background-blur = macos-glass-regular`,
which feed `WindowChromeApplier` via the clone snapshot. The theme load
runs before the override layer so the surface itself stays at alpha 0
and the window tint is the only visible layer.
@sbertix sbertix force-pushed the sbertix/supacode-terminal-theme branch from 42a50e9 to 709c3c3 Compare May 14, 2026 22:13
@tuist
Copy link
Copy Markdown

tuist Bot commented May 14, 2026

🛠️ Tuist Run Report 🛠️

Builds 🔨

Scheme Status Duration Commit
supacode 1m 21s 7049e882b

@sbertix sbertix merged commit 662b6ee into main May 14, 2026
2 checks passed
@sbertix sbertix deleted the sbertix/supacode-terminal-theme branch May 14, 2026 22:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant