Add JS to reset the toggle if the system theme changes when page closed

This commit is contained in:
Francis Lavoie 2020-04-04 19:19:25 -04:00
parent d68e5970f8
commit 538db8ec57
No known key found for this signature in database
GPG key ID: 7D1A27F0725BE5D8

View file

@ -1,3 +1,21 @@
// We want to run this as early as possible
(function() {
// Grab the cached preferred color scheme
let cachedPref = localStorage.getItem('prefers-color-scheme');
// Grab the current preferred color scheme
let currentPref = window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light';
// If the preferred color scheme has changed since last page load
if (cachedPref !== currentPref) {
// We clear the toggle's value so it doesn't override the system choice
localStorage.removeItem('dark-mode-toggle');
}
// Set the preferred color scheme so it can be checked on a future page load
localStorage.setItem('prefers-color-scheme', currentPref);
})();
document.addEventListener('DOMContentLoaded', function() { document.addEventListener('DOMContentLoaded', function() {
// Algolia search // Algolia search
docsearch({ docsearch({