fix(rofi): drop the go-previous icon from menu Back rows
Some checks failed
Check / eval (push) Has been cancelled

Every submenu's "↩ Back" row rendered two arrows: the ↩ glyph in the
label plus a themed go-previous icon. back() now emits the plain label
only — identical to what pick-lists already append — so Back shows a
single glyph everywhere. BACK="↩ Back" stays the universal label/match,
so no case-branch comparison changes.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
2026-07-07 21:42:56 +01:00
parent 28cbaf6f5e
commit 6c61b51d55
3 changed files with 21 additions and 11 deletions

View File

@@ -50,12 +50,6 @@ still doesn't open the keybindings cheatsheet. Re-diagnose: confirm the
Hyprland bind's modmask/keysym against the *actual* layout, whether rofi
2.0.0 changed anything, and that the cheatsheet path still resolves.
### 34. Menu "Back" shows double arrows `[bug]`
(Raised by Bernardo, 2026-07-07 — item 4.) The shared `↩ Back` row draws
a glyph arrow in its label AND an icon arrow — two arrows. Drop one (the
row icon or the inline glyph) so Back shows a single arrow. One fix in
the `back`/`row` helper in rofi.nix; applies to every submenu.
### 40. Display rofi menu "Back" doesn't return `[bug]`
(Raised by Bernardo, 2026-07-07 — item 10.) In System Display, the
Back row fails to return to the previous menu (other submenus' Back work

View File

@@ -17,6 +17,20 @@ Template:
---
## 2026-07-07 — Menu "Back" double arrows (iteration #56, item 34)
- **Task:** BACKLOG item 34 — every submenu's `↩ Back` row drew two
arrows: the `↩` glyph in the label AND a themed `go-previous` icon.
- **Fix:** `back()` in `modules/home/rofi.nix` was `row "$BACK"
go-previous` (label + icon). Changed to `printf '%s\n' "$BACK"` — now
identical to what the plain pick-lists already append, so every Back row
shows a single `` glyph. Kept `BACK="↩ Back"` as the universal
label/match, so no case-branch comparison changed (no risk of a Back
that fails to return — the item-40 failure mode). Collision-exact match
preserved by the glyph.
- **Verified:** V0 `nix flake check --no-build` green (evaluates
homeConfigurations). Single-arrow result is deterministic from the code;
visual confirmation on hardware is nice-to-have, not load-bearing.
## 2026-07-07 — Battery charge-limit quick toggle (iteration #55)
- **Task:** BACKLOG PROPOSED (promoted by Bernardo) — a toggle for the
battery charge threshold.

View File

@@ -188,12 +188,14 @@ let
# Esc is their back path; free-text prompts (web, ask) have no list to
# append to Esc cancels. Everything hand-rolled gets the row below.
# General menu convention: every list menu ends with a " Back" entry that
# returns one level up (so you never have to Esc out and reopen). `back`
# emits it with an icon; plain pick-lists append the bare label instead.
# Always matched EXACTLY (" Back") so it can't collide with clipboard or
# filename content. The arrow + go-previous icon read as "go back".
# returns one level up (so you never have to Esc out and reopen). The ``
# glyph in the label IS the arrow `back` must not also attach a
# go-previous icon, or icon menus render two arrows (item 34). So `back`
# is now just the plain-label emit, identical to what pick-lists append
# one arrow everywhere. Always matched EXACTLY (" Back") so it can't
# collide with clipboard or filename content.
BACK=" Back"
back() { row "$BACK" go-previous; }
back() { printf '%s\n' "$BACK"; }
case "''${1:-}" in
power)