The look from the server's tokens, pinned; the frame and bar follow the page's theme
ui/tokens.css is no longer a hand copy that drifts: scripts/fetch-tokens.sh takes the server's tokens.css at a git ref and tokens.lock.json pins it, as fetch-cli.sh does for the CLI. build.rs reads the two themes' --bg and --border out of it, so no colour is written in Rust. The content view reports the page's theme by a navigation the app refuses (llembas-theme:<name>), and the window, the title bar and the first-run page are painted in it and remember it. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
This commit is contained in:
12 files changed
+994
-59
No files matched your search
+15
@@ -0,0 +1,15 @@
|
||||
// The app's own pages are painted in the server page's theme, which the app reports in `status`
|
||||
// (see src-tauri/src/lib.rs: the content view says, the app remembers). tokens.css selects a
|
||||
// theme by `data-theme` and `data-base` on <html>, as the server's pages do; with nothing set
|
||||
// it is Moria, the server's own default, so the page needs no script to be right at first.
|
||||
"use strict"
|
||||
|
||||
window.lembasTheme = {
|
||||
apply(name) {
|
||||
if (name !== "moria" && name !== "shire") return
|
||||
const root = document.documentElement
|
||||
if (root.dataset.theme === name) return
|
||||
root.dataset.theme = name
|
||||
root.dataset.base = name
|
||||
},
|
||||
}
|
||||
Reference in new issue
Block a user