Skip to content

feat(terminal): add color theming with built-in themes#171

Merged
Cleboost merged 5 commits into
Cleboost:masterfrom
subhangadirli:feature/terminal-theming
Jul 22, 2026
Merged

feat(terminal): add color theming with built-in themes#171
Cleboost merged 5 commits into
Cleboost:masterfrom
subhangadirli:feature/terminal-theming

Conversation

@subhangadirli

Copy link
Copy Markdown
Contributor

Terminals previously never set VTE colors, so they inherited a poor GTK-derived palette. Introduce a theme module with 10 curated schemes (Dracula, Nord, Tokyo Night, Catppuccin Mocha, Gruvbox Dark, One Dark, Solarized Dark/Light, Monokai, GitHub Light).

  • Apply the configured theme to each terminal on creation
  • Add terminal_theme to AppConfig, defaulting to Dracula, with a serde default so existing configs load unchanged
  • Add a Color Theme dropdown in settings that saves and live-recolors all open terminals instantly

Terminals previously never set VTE colors, so they inherited a poor
GTK-derived palette. Introduce a theme module with 10 curated schemes
(Dracula, Nord, Tokyo Night, Catppuccin Mocha, Gruvbox Dark, One Dark,
Solarized Dark/Light, Monokai, GitHub Light).

- Apply the configured theme to each terminal on creation
- Add terminal_theme to AppConfig, defaulting to Dracula, with a serde
  default so existing configs load unchanged
- Add a Color Theme dropdown in settings that saves and live-recolors
  all open terminals instantly
@Cleboost

Copy link
Copy Markdown
Owner

Thanks for your first contribution ! I just touch a few spot to simplify code.

Cleboost added 4 commits July 22, 2026 11:35
Move the default theme constant into config_observer, use index-based
theme lookup, filter session tabs when recoloring, and avoid heap
allocations when applying VTE palettes.
@Cleboost

Cleboost commented Jul 22, 2026

Copy link
Copy Markdown
Owner

Reverted the changeset — wrong repo, wrong morning. Rustmius doesn’t use Changesets, my bad 😅

@Cleboost
Cleboost merged commit b40f1ed into Cleboost:master Jul 22, 2026
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.

2 participants