From b77ee225e5e1ecfe96972aa343798c363b815bce Mon Sep 17 00:00:00 2001 From: Luc Mcgrady Date: Fri, 10 Oct 2025 20:33:22 +0100 Subject: [PATCH] Fix: Night mode --- ts/routes/reviewer-inner/index.ts | 23 ++++++++--------------- ts/routes/reviewer/+page.svelte | 6 +++++- ts/routes/reviewer/Reviewer.svelte | 4 ++-- ts/routes/reviewer/reviewer.ts | 20 +++++++++++++++++++- 4 files changed, 34 insertions(+), 19 deletions(-) diff --git a/ts/routes/reviewer-inner/index.ts b/ts/routes/reviewer-inner/index.ts index 7bd319339..7480589de 100644 --- a/ts/routes/reviewer-inner/index.ts +++ b/ts/routes/reviewer-inner/index.ts @@ -2,6 +2,7 @@ // License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html import "../base.scss"; import "../../reviewer/reviewer.scss"; +import { enableNightMode } from "../reviewer/reviewer"; addEventListener("message", (e) => { switch (e.data.type) { @@ -9,21 +10,6 @@ addEventListener("message", (e) => { document.body.innerHTML = e.data.value; break; } - case "nightMode": { - // This method currently "Flashbangs" the user if they have nightmode on and is a placeholder - // I will probably use #night-mode in the url. - const root = document.querySelector("html")!; - const nightMode = e.data.value; - if (e.data.value) { - root.classList.add("night-mode"); - } else { - root.classList.remove("night-mode"); - } - document.body.className = nightMode ? "nightMode card" : "card"; - root.className = nightMode ? "night-mode" : ""; - root.setAttribute("data-bs-theme", nightMode ? "dark" : "light"); - break; - } default: { console.warn(`Unknown message type: ${e.data.type}`); break; @@ -39,3 +25,10 @@ function pycmd(cmd: string) { window.parent.postMessage({ type: "pycmd", value: cmd }, "*"); } globalThis.pycmd = pycmd; + +const params = new URLSearchParams(location.search); +const theme = params.get("nightMode"); +if (theme !== null) { + enableNightMode(); +} +document.documentElement.classList.add("card"); diff --git a/ts/routes/reviewer/+page.svelte b/ts/routes/reviewer/+page.svelte index 8e037789e..2e9053f07 100644 --- a/ts/routes/reviewer/+page.svelte +++ b/ts/routes/reviewer/+page.svelte @@ -3,11 +3,15 @@ Copyright: Ankitects Pty Ltd and contributors License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html -->
diff --git a/ts/routes/reviewer/Reviewer.svelte b/ts/routes/reviewer/Reviewer.svelte index f136a761f..6a71d5d4b 100644 --- a/ts/routes/reviewer/Reviewer.svelte +++ b/ts/routes/reviewer/Reviewer.svelte @@ -3,7 +3,7 @@ Copyright: Ankitects Pty Ltd and contributors License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html -->