aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHåkon Solbjørg <hakon@solbj.org>2023-04-02 19:38:04 +0200
committerHåkon Solbjørg <hakon@solbj.org>2023-04-02 19:38:29 +0200
commitea103d1b32f3fa898ab3f164e3e8bfe37fdb71a9 (patch)
treeb4fe4397e1312c49a4c921a46989118f9668ec4d
parentf41402f56282320473843df8726d5e04878427ca (diff)
fix(nightmode): Respect user provided configuration for night mode if providedfix/night-mode-respect-user-configuration
If user sets the cookie or URL query parameter for nightMode, we will respect that. Note that it is a bit cumbersome to _clear_ this configuration (afaik?) if it is set. This is also the case if the user toggles nightmode directly in Gondul (`n`). However, this last configuration is not persisted - so on a page reload, this setting is removed (no need to clear cookies/query params), and the system preference is again followed.
-rw-r--r--web/js/nms-nightmode.js5
1 files changed, 5 insertions, 0 deletions
diff --git a/web/js/nms-nightmode.js b/web/js/nms-nightmode.js
index 310ec01..0246e88 100644
--- a/web/js/nms-nightmode.js
+++ b/web/js/nms-nightmode.js
@@ -7,6 +7,11 @@ var nmsNightMode = nmsNightMode || {
var prefersColorSchemeMediaQuery = "(prefers-color-scheme: dark)";
nmsNightMode.toggle = function() {
+ if (nms.nightMode) {
+ console.log("nightmode already set, not following system (remove cookies & url param to re-enable system following)");
+ return
+ }
+
var active = window.matchMedia(prefersColorSchemeMediaQuery).matches;
nms.nightMode = active;
}