diff options
| author | Greg Roach <greg@subaqua.co.uk> | 2026-03-18 13:32:51 +0000 |
|---|---|---|
| committer | Greg Roach <greg@subaqua.co.uk> | 2026-03-18 13:32:51 +0000 |
| commit | 0a5ef79412ff95f494e2782f339d542cf2286f8f (patch) | |
| tree | 19a39b4d86ae2ec6479807749a0be93ef7250b03 /resources | |
| parent | e46bf5dfd52270f3519094b02afbb8975be23f44 (diff) | |
| download | webtrees-0a5ef79412ff95f494e2782f339d542cf2286f8f.tar.gz webtrees-0a5ef79412ff95f494e2782f339d542cf2286f8f.tar.bz2 webtrees-0a5ef79412ff95f494e2782f339d542cf2286f8f.zip | |
Bootstrap color scheme can be either fixed (light/dark) or auto (#5338)
Diffstat (limited to 'resources')
| -rw-r--r-- | resources/js/webtrees.js | 10 | ||||
| -rw-r--r-- | resources/views/layouts/default.phtml | 2 |
2 files changed, 5 insertions, 7 deletions
diff --git a/resources/js/webtrees.js b/resources/js/webtrees.js index 29042f7100..f894b9e7f5 100644 --- a/resources/js/webtrees.js +++ b/resources/js/webtrees.js @@ -954,10 +954,6 @@ }; webtrees.setColorTheme = function (mode) { - if (document.documentElement.dataset.bsTheme === undefined) { - return; - } - if (window.matchMedia('(prefers-color-scheme: dark)').matches) { document.documentElement.dataset.bsTheme = 'dark'; } else { @@ -982,8 +978,10 @@ $.ajaxSetup({ */ document.addEventListener('DOMContentLoaded', function() { // Set light/dark mode - webtrees.setColorTheme(); - webtrees.watchForColorThemeChanges(); + if (document.documentElement.dataset.bsTheme === 'auto') { + webtrees.setColorTheme(); + webtrees.watchForColorThemeChanges(); + } // Page elements that load automatically via AJAX. // This prevents bad robots from crawling resource-intensive pages. diff --git a/resources/views/layouts/default.phtml b/resources/views/layouts/default.phtml index 63e3df70c8..0f54ab7b0e 100644 --- a/resources/views/layouts/default.phtml +++ b/resources/views/layouts/default.phtml @@ -33,7 +33,7 @@ $theme = Registry::container()->get(ModuleThemeInterface::class); ?> <!DOCTYPE html> -<html dir="<?= I18N::locale()->direction() ?>" lang="<?= I18N::locale()->languageTag() ?>" <?= $theme->supportsDarkTheme() ? 'data-bs-theme="light"' : '' ?>> +<html dir="<?= I18N::locale()->direction() ?>" lang="<?= I18N::locale()->languageTag() ?>" data-bs-theme="<?= $theme->bootstrapColorScheme() ?>"> <head> <meta charset="UTF-8"> <meta name="csrf" content="<?= e(csrf_token()) ?>"> |
