From cc31a40b0cb53cba7f51187cb6d68076c3f54c0f Mon Sep 17 00:00:00 2001
From: David Fischer <david@konst.fish>
Date: Tue, 19 Sep 2023 16:25:51 +0000
Subject: [PATCH] feat: support changes in system theme (#484)
---
quartz/components/scripts/darkmode.inline.ts | 9 +++++++++
1 files changed, 9 insertions(+), 0 deletions(-)
diff --git a/quartz/components/scripts/darkmode.inline.ts b/quartz/components/scripts/darkmode.inline.ts
index e16f4f8..c42a367 100644
--- a/quartz/components/scripts/darkmode.inline.ts
+++ b/quartz/components/scripts/darkmode.inline.ts
@@ -20,4 +20,13 @@
if (currentTheme === "dark") {
toggleSwitch.checked = true
}
+
+ // Listen for changes in prefers-color-scheme
+ const colorSchemeMediaQuery = window.matchMedia("(prefers-color-scheme: dark)")
+ colorSchemeMediaQuery.addEventListener("change", (e) => {
+ const newTheme = e.matches ? "dark" : "light"
+ document.documentElement.setAttribute("saved-theme", newTheme)
+ localStorage.setItem("theme", newTheme)
+ toggleSwitch.checked = e.matches
+ })
})
--
Gitblit v1.10.0