Skip to content

Instantly share code, notes, and snippets.

@controversial
Created March 22, 2023 04:14
Show Gist options
  • Save controversial/0890c428d2c388bec4acbf00f2eef645 to your computer and use it in GitHub Desktop.
Save controversial/0890c428d2c388bec4acbf00f2eef645 to your computer and use it in GitHub Desktop.
Script to inject into mymind.com to make its color scheme stay in sync with the system’s
const darkQuery = '(prefers-color-scheme: dark)';
// Make mymind’s color scheme match the system’s
function updateDarkMode() {
const darkModeToggle = document.querySelector('.color-scheme-toggle');
const isDark = !darkModeToggle.classList.contains('light');
if (window.matchMedia(darkQuery).matches !== isDark) {
darkModeToggle.click();
}
}
// Color scheme should update when the page loads
updateDarkMode();
// Color scheme should update when the user toggles dark mode
window.matchMedia(darkQuery).addEventListener('change', updateDarkMode);
// Color scheme should update when the page is refocused (in case it missed a background update)
document.addEventListener('visibilitychange', updateDarkMode);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment