feat(waybar): right-click volume opens a floating pwvucontrol mixer
All checks were successful
Check / eval (push) Successful in 2m55s

Right-clicking the Waybar volume module now opens pwvucontrol (per-app
mixer); left-click still mutes. Adds:

- on-click-right in waybar.nix + all four whole-swap jsoncs (parity)
- hyprland.nix: the config's first windowrule block — float + center the
  mixer (pwvucontrol, with pavucontrol as a fallback class); normal-
  priority list so a downstream windowrule concatenates
- pwvucontrol in the template home.packages

pwvucontrol is PipeWire-native + GTK4/libadwaita, so it themes via the
portal color-scheme like Amberol. app-id verified from the built package.
This settles the windowrule pattern/placement; item 41 is now just
broadening the float set. Right-click→float→center is a V3 session check.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
2026-07-07 22:31:00 +01:00
parent 239c3c4551
commit 28a28e05d3
10 changed files with 53 additions and 24 deletions

View File

@@ -17,6 +17,25 @@ Template:
---
## 2026-07-07 — Right-click volume → floating mixer (iteration #62, item 35)
- **Task:** BACKLOG item 35 — right-click the Waybar volume module to
open a mixer in a floating window. (Bernardo re-launched /loop after I'd
flagged it as gated on 41 — read as "handle it," so I did 35 fully and
re-scoped 41 to just broadening the float set.)
- **Chose pwvucontrol** (PipeWire-native, GTK4/libadwaita → themes via the
portal like Amberol; distro is already wpctl/PipeWire). Verified app-id
`com.saivert.pwvucontrol` from the built package.
- **Changes:** (1) `waybar.nix` pulseaudio `on-click-right = "pwvucontrol"`
+ parity into all four whole-swap jsoncs (summer-day/night, boreal,
executive-slate). (2) `hyprland.nix` — the config's **first** `windowrule`
block: `float` + `center` for the mixer classes (pwvucontrol + pavucontrol
fallback), normal-priority list so downstream concatenates. (3)
`pwvucontrol` added to the template `home.packages`.
- **Verified:** V0 green; `nix eval` of the homeConfiguration confirms the
windowrule regex renders with correct single-backslash escaping
(`class:^(com\.saivert\.pwvucontrol|…)$`). The right-click→float→center
interaction is a V3 session check (queued). Item 41 now = broaden the set.
## 2026-07-07 — Window focus: vim keys → arrows (iteration #61, direct request)
- **Task:** Bernardo — switch window navigation from vim-style
SUPER+H/J/K/L to SUPER+arrow keys.