docs(backlog): promote tray icon parity → NEXT #89
Some checks failed
Check / eval (push) Failing after 1h16m53s

Bernardo accepted the EasyEffects tray-icon pitch and widened it: all
SNI apps (Signal/Telegram/ZapZap flatpaks too) should read monochrome
in the bar. Three slices: bus inventory (IconName vs IconPixmap),
HM shadow-icon override layer for name-based items, per-app knobs for
pixmap ones. PROPOSED pitch folded in.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
Bernardo Magri
2026-07-11 17:10:31 +01:00
parent 482cb87c70
commit 919dc4afc0

View File

@@ -55,6 +55,33 @@ runtime-computed `resume_offset` into the boot cmdline, and the dev box runs
exactly this layout (`/proc/cmdline` verified) but isn't Nomarchy. Steps in
HARDWARE-QUEUE. Close #76 on PASS.
### 89. Tray icon parity — themed overrides for SNI apps (Bernardo 2026-07-11)
The bar is monochrome; third-party tray icons aren't. EasyEffects 8's Qt
SNI publishes IconName `com.github.wwmm.easyeffects` → Papirus full-color
blue (T14s V3, 2026-07-11); Signal / Telegram / ZapZap (all flatpaks on
the T14s) likely worse. Goal: every tray icon reads like part of the bar.
Slices:
1. **Inventory (V3-ish, cheap):** run each target app, read
`org.kde.StatusNotifierItem` `IconName` / `IconPixmap` / `IconThemePath`
off the bus (method proven 2026-07-11: watcher's
`RegisteredStatusNotifierItems` + `busctl get-property`). Name-based →
overridable via icon lookup; pixmap-based → *not* themable from outside
(needs a per-app knob/patch). Record the split in the item.
2. **Override layer:** an HM-managed shadow icon dir that wins the XDG
lookup for the session icon theme (e.g. `xdg.dataFile
"icons/<theme-iconset>/…"` shadowing the store copy, or a
`Nomarchy-tray` theme inheriting the active set — pick whichever
survives theme whole-swaps; icons must follow the active theme per
THEME-DESIGN, not hardcode one palette). Ship monochrome SVGs for the
name-based offenders found in slice 1. Waybar restart re-resolves.
3. **Pixmap apps:** document (or wire, where a setting exists) per-app
monochrome/tray options; what can't be fixed goes in the item's
record, not silent scope creep.
V-path: V1 eval + icon file lands in the right lookup dir; V3 screenshot
of the tray on a real session (headless VM has no flatpak chat apps).
## LATER
- **Wallpapers artifact split** (ROADMAP § Faster switches — decided,
@@ -118,17 +145,6 @@ high-ROI, etc.) live in the journal + ROADMAP — not here.*
fixture. Control-center / MOTD already mention these; the gap is the
silent first *graphical* session for people who never open those.
- **EasyEffects 8 tray icon breaks bar aesthetics** (2026-07-11, T14s
V3) — EasyEffects 8 (Qt SNI rewrite) publishes IconName
`com.github.wwmm.easyeffects`, which resolves to Papirus's full-color
blue icon in Waybar's tray; EE 7 showed a symbolic glyph that matched
the monochrome bar. Options: ship a monochrome override SVG shadowing
the id in `$XDG_DATA_HOME/icons/<icon-theme>/…` (must follow the
theme's icon set per THEME-DESIGN), or upstream a `-symbolic`
IconName. Cost: small for a single-icon override, but it's per-icon
whack-a-mole — worth deciding a general "tray icon parity" policy
(nm-applet/udiskie currently pass only by luck of their icon sets).
- **Fingerprint *or* password, in parallel** (2026-07-11, Bernardo) —
`fingerprint.pam` gives pam_fprintd's sequential UX: sudo waits on
the reader, password only after failure/timeout. Bernardo wants