fix(theme): solid per-theme hyprland borders, matching legacy
v1 forced an accent→accentAlt 45deg gradient on every theme's window
border; the legacy identity themes all used a *solid* border — accent for
nord/retro-82/lumon, the text tone for kanagawa/summer-day/summer-night.
Add a palette-resolved `border` field ({active, inactive}, each a palette
key or literal hex) to the theme schema with accent/overlay defaults in
theme.nix, consume it solid in hyprland.nix, and declare it in every
preset (and the live state). Declaring it everywhere is required because
`nomarchy-theme-sync apply` deep-merges presets — an omitted field would
stick across switches, like colors already are fully specified per theme.
All six identity themes resolve to their exact legacy active border
(verified: nord #81a1c1, retro-82 #faa968, lumon #f2fcff, kanagawa
#dcd7ba, summer-night #d3c6aa, summer-day #5c6a72). nix flake check passes.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -65,8 +65,10 @@ in
|
||||
gaps_in = t.ui.gapsIn;
|
||||
gaps_out = t.ui.gapsOut;
|
||||
border_size = t.ui.borderSize;
|
||||
"col.active_border" = "${rgb c.accent} ${rgb c.accentAlt} 45deg";
|
||||
"col.inactive_border" = rgb c.overlay;
|
||||
# Solid borders from theme.border (per-theme, palette-resolved) —
|
||||
# matches the legacy identity themes, which never used a gradient.
|
||||
"col.active_border" = rgb t.border.active;
|
||||
"col.inactive_border" = rgb t.border.inactive;
|
||||
layout = lib.mkDefault "dwindle";
|
||||
resize_on_border = lib.mkDefault true;
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user