From 0b537b07ee59985122296e1ed82fa915a36dda2c Mon Sep 17 00:00:00 2001 From: Mathieu Lemay <23462228+mathieu-lemay@users.noreply.github.com> Date: Thu, 4 Jun 2026 12:55:17 -0400 Subject: [PATCH] Add zenburn theme (#2112) --- src/renderer/themes/use-app-theme.ts | 1 + src/shared/themes/app-theme-types.ts | 1 + src/shared/themes/app-theme.ts | 2 ++ src/shared/themes/zenburn/zenburn.ts | 28 ++++++++++++++++++++++++++++ 4 files changed, 32 insertions(+) create mode 100644 src/shared/themes/zenburn/zenburn.ts diff --git a/src/renderer/themes/use-app-theme.ts b/src/renderer/themes/use-app-theme.ts index af7f26e45..c9abea2ee 100644 --- a/src/renderer/themes/use-app-theme.ts +++ b/src/renderer/themes/use-app-theme.ts @@ -47,6 +47,7 @@ export const THEME_DATA = [ { label: 'Rosé Pine', type: 'dark', value: AppTheme.ROSE_PINE }, { label: 'Rosé Pine Moon', type: 'dark', value: AppTheme.ROSE_PINE_MOON }, { label: 'Rosé Pine Dawn', type: 'light', value: AppTheme.ROSE_PINE_DAWN }, + { label: 'Zenburn', type: 'dark', value: AppTheme.ZENBURN }, ]; export const useAppTheme = (overrideTheme?: AppTheme) => { diff --git a/src/shared/themes/app-theme-types.ts b/src/shared/themes/app-theme-types.ts index 0e47aabe8..f17d3e8fd 100644 --- a/src/shared/themes/app-theme-types.ts +++ b/src/shared/themes/app-theme-types.ts @@ -34,6 +34,7 @@ export enum AppTheme { TOKYO_NIGHT = 'tokyoNight', VSCODE_DARK_PLUS = 'vscodeDarkPlus', VSCODE_LIGHT_PLUS = 'vscodeLightPlus', + ZENBURN = 'zenburn', } export type AppThemeConfiguration = Partial; diff --git a/src/shared/themes/app-theme.ts b/src/shared/themes/app-theme.ts index 7438cc67c..ae7aa76f7 100644 --- a/src/shared/themes/app-theme.ts +++ b/src/shared/themes/app-theme.ts @@ -35,6 +35,7 @@ import { solarizedLight } from '/@/shared/themes/solarized-light/solarized-light import { tokyoNight } from '/@/shared/themes/tokyo-night/tokyo-night'; import { vscodeDarkPlus } from '/@/shared/themes/vscode-dark-plus/vscode-dark-plus'; import { vscodeLightPlus } from '/@/shared/themes/vscode-light-plus/vscode-light-plus'; +import { zenburn } from '/@/shared/themes/zenburn/zenburn'; export const appTheme: Record = { [AppTheme.AYU_DARK]: ayuDark, @@ -68,6 +69,7 @@ export const appTheme: Record = { [AppTheme.TOKYO_NIGHT]: tokyoNight, [AppTheme.VSCODE_DARK_PLUS]: vscodeDarkPlus, [AppTheme.VSCODE_LIGHT_PLUS]: vscodeLightPlus, + [AppTheme.ZENBURN]: zenburn, }; export const getAppTheme = (theme: AppTheme): AppThemeConfiguration => { diff --git a/src/shared/themes/zenburn/zenburn.ts b/src/shared/themes/zenburn/zenburn.ts new file mode 100644 index 000000000..165e2f5ec --- /dev/null +++ b/src/shared/themes/zenburn/zenburn.ts @@ -0,0 +1,28 @@ +import { AppThemeConfiguration } from '/@/shared/themes/app-theme-types'; + +export const zenburn: AppThemeConfiguration = { + app: { + 'overlay-header': + 'linear-gradient(transparent 0%, rgb(40 44 52 / 85%) 100%), var(--theme-background-noise)', + 'overlay-subheader': + 'linear-gradient(180deg, rgb(40 44 52 / 5%) 0%, var(--theme-colors-background) 100%), var(--theme-background-noise)', + 'scrollbar-handle-background': 'rgba(160, 160, 160, 20%)', + 'scrollbar-handle-hover-background': 'rgba(160, 160, 160, 40%)', + }, + colors: { + background: '#3f3f3f', + 'background-alternate': '#313131', + black: '#313131', + foreground: '#dcdccc', + 'foreground-muted': '#d9d9d9', + primary: '#95a4b2', + 'state-error': '#dca3a3', + 'state-info': '#95a4b2', + 'state-success': '#7f9f7f', + 'state-warning': '#efdcbc', + surface: '#636363', + 'surface-foreground': '#95a4b2', + white: '#dcdccc', + }, + mode: 'dark', +};