fix(swaync): palette-safe pairings — text was invisible on summer-day (item 25)
All checks were successful
Check / eval (push) Successful in 2m52s
All checks were successful
Check / eval (push) Successful in 2m52s
Palette roles aren't uniform: summer-day and flexoki-light use subtext as text-ON-surface (== base) and surface as a dark chip (== text), so swaync's @subtext-on-@base body text and @surface/@text buttons were self-colored (caught on the Latitude). - body/summary: @text on @base — the one text pairing that passes in every palette (survey: worst WCAG ratio 5.18 across all 21 themes; subtext/base bottomed at 1.00 twice, muted/base at 1.27). - hover rows + widget-title buttons: alpha(@text, 0.1) tints — contrast by construction; subtext/surface defines dropped. - NEW checks.theme-contrast (tools/check-theme-contrast.py): asserts the hex-on-hex text pairings across themes/*.json, cheap (no VM). The audit also found the generated waybar/rofi CSS shares the bug class, live on flexoki-light (no whole-swap) → BACKLOG item 27. Verified: V0; V1 (checks.theme-contrast builds green, 21 themes; rendered services.swaync.style has zero @subtext/@surface). Honesty: NOT visually verified — V3 queued (notify-send on summer-day). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
@@ -17,6 +17,22 @@ Template:
|
||||
|
||||
---
|
||||
|
||||
## 2026-07-04 — swaync contrast fix + theme-contrast check (iteration #9, item 25)
|
||||
- **Task:** BACKLOG NOW#25 — swaync text invisible on summer-day.
|
||||
- **Did:** swaync.nix now uses only palette-safe pairings: body/summary
|
||||
= @text on @base (worst ratio 5.18 across all 21 themes; subtext/base
|
||||
was 1.00 on summer-day + flexoki-light), hover rows + widget buttons
|
||||
= alpha(@text, 0.1) tints (contrast by construction); dropped the
|
||||
subtext/surface defines. NEW permanent check `checks.theme-contrast`
|
||||
(tools/check-theme-contrast.py) asserts the hex-on-hex text pairings
|
||||
across every theme JSON. Audit found the same mispairing in generated
|
||||
waybar/rofi CSS, live on flexoki-light (no whole-swap) → NOW item 27.
|
||||
- **Verified:** V0; V1 — checks.theme-contrast builds green (21 themes),
|
||||
rendered services.swaync.style contains zero @subtext/@surface.
|
||||
NOT V2/V3-verified visually — queued (Bernardo is at the Latitude).
|
||||
- **Pending:** V3 notify-send readability check on summer-day; item 27.
|
||||
- **Next suggestion:** item 27 (same bug class, waybar/rofi surfaces).
|
||||
|
||||
## 2026-07-04 — SUPER+? bind fix (iteration #8, item 26)
|
||||
- **Task:** BACKLOG NOW#26 — cheatsheet bind never fires on hardware.
|
||||
- **Did:** keybinds.nix: `$mod, question` → `$mod SHIFT, question`
|
||||
|
||||
Reference in New Issue
Block a user