ink ladder: base03/base04 derive from base05, shared with hyprland
base03/base04/base05 were three independent slots off the wallpaper, not one ink at three strengths. On wallhaven-k8dqr6 the raw ladder is red, blue and cream; on 5y39p9 base03 is a saturated gold against pale cream. That is why muted labels read as a second accent and why the shell frame never quite matched the window border beside it. base04 and base03 are now base05 mixed toward base00. The two factors and the mix live in settings/ui.nix and are used by all three consumers: Theme.qml, theming.nix's hypr.lua (applied at runtime) and hyprland.nix's build-time fallback. Same trick base01/base02 already used for surfaces. Verified on 5y39p9: hypr.lua now emits aca888 / 727761 from base05 f1e2b6 against base00 0a1f1c, matching what inkStep computes in the shell.
This commit is contained in:
parent
1dc6886b56
commit
b5372d46f3
4 changed files with 78 additions and 15 deletions
|
|
@ -563,11 +563,26 @@ in
|
|||
readonly property color base00: "#" + pal.base00
|
||||
readonly property color base01: Qt.lighter(base00, 1.7) // card
|
||||
readonly property color base02: Qt.lighter(base00, 2.4) // hover / chip / track
|
||||
// ── Ink, wallpaper-derived: base05 primary, base04 muted,
|
||||
// base03 disabled (also the border colour).
|
||||
readonly property color base03: "#" + pal.base03
|
||||
readonly property color base04: "#" + pal.base04
|
||||
// ── Ink: ONE colour at three strengths. base05 is the
|
||||
// wallpaper's ink; base04 and base03 are that same colour mixed
|
||||
// toward base00 — not stylix's own base03/base04, which are
|
||||
// independent slots off the image and land in unrelated hues.
|
||||
// On wallhaven-k8dqr6 the raw ladder is red (base03), blue
|
||||
// (base04) and cream (base05): three colours for one ramp, so
|
||||
// a muted label read as a second accent rather than as quieter
|
||||
// text. Same reasoning as base01/base02 above.
|
||||
//
|
||||
// The two mixes live in settings/ui.nix and are used verbatim
|
||||
// by settings/theming.nix for hyprland's window borders, so the
|
||||
// shell frame and the window borders stay the same colour.
|
||||
readonly property color base05: "#" + pal.base05
|
||||
function inkStep(t) {
|
||||
return Qt.rgba(base05.r + (base00.r - base05.r) * t,
|
||||
base05.g + (base00.g - base05.g) * t,
|
||||
base05.b + (base00.b - base05.b) * t, 1);
|
||||
}
|
||||
readonly property color base04: inkStep(${toString ui.inkMuted})
|
||||
readonly property color base03: inkStep(${toString ui.inkFaint})
|
||||
// The one themed accent: active, focused, selected, filled —
|
||||
// and every status colour below is harmonised toward it, so a
|
||||
// bad pick tints the whole bar rather than just the highlights.
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue