Skip to content

Commit

Permalink
client: add the "System" theme
Browse files Browse the repository at this point in the history
  • Loading branch information
adoriandoran committed Dec 16, 2024
1 parent 1c36436 commit aba2813
Show file tree
Hide file tree
Showing 4 changed files with 13 additions and 2 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -71,8 +71,9 @@ export default class ThemeOptions extends OptionsWidget {
{ val: 'next', title: t("theme.triliumnext") },
{ val: 'next-light', title: t("theme.triliumnext-light") },
{ val: 'next-dark', title: t("theme.triliumnext-dark") },
{ val: 'system', title: t('theme.system_theme') },
{ val: 'light', title: t('theme.light_theme') },
{ val: 'dark', title: t('theme.dark_theme') }
{ val: 'dark', title: t('theme.dark_theme') }
].concat(await server.get('options/user-themes'));

this.$themeSelect.empty();
Expand Down
7 changes: 7 additions & 0 deletions src/public/stylesheets/theme.css
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
/* Import the light color scheme.
* This is the base color scheme, always active and overridden by the dark
* color scheme stylesheet when necessary. */
@import url(./theme-light.css);

/* Import the dark color scheme when the system preference is set to dark mode */
@import url(./theme-dark.css) (prefers-color-scheme: dark);
1 change: 1 addition & 0 deletions src/public/translations/en/translation.json
Original file line number Diff line number Diff line change
Expand Up @@ -1072,6 +1072,7 @@
"title": "Application Theme",
"theme_label": "Theme",
"override_theme_fonts_label": "Override theme fonts",
"system_theme": "System",
"light_theme": "Light",
"dark_theme": "Dark",
"triliumnext": "TriliumNext Beta (Follow system color scheme)",
Expand Down
4 changes: 3 additions & 1 deletion src/routes/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,9 @@ function index(req: Request, res: Response) {
}

function getThemeCssUrl(theme: string, themeNote: BNote | null) {
if (theme === 'light') {
if (theme === 'system') {
return `${assetPath}/stylesheets/theme.css`;
} else if (theme === 'light') {
// light theme is always loaded as baseline
return false;
} else if (theme === 'dark') {
Expand Down

0 comments on commit aba2813

Please sign in to comment.