diff --git a/worker.js b/worker.js index 0388297..b26a381 100644 --- a/worker.js +++ b/worker.js @@ -252,7 +252,18 @@ class BodyRewriter { el.className = 'toggle-mode'; el.addEventListener('click', toggle); nav.appendChild(el); - onLight(); + + // enable smart dark mode based on user-preference + if (window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches) { + onDark(); + } else { + onLight(); + } + + // try to detect if user-preference change + window.matchMedia('(prefers-color-scheme: dark)').addEventListener('change', e => { + toggle(); + }); } const observer = new MutationObserver(function() { if (redirected) return;