From 6d3747ec57db0bd23e6971dab2949381f3f195b5 Mon Sep 17 00:00:00 2001 From: "Danilo M." Date: Wed, 16 Sep 2026 13:54:56 +0200 Subject: feat(window-switcher): mark desktops with waybar's icons The card's desktop line showed the workspace number. waybar draws the same eight desktops as CSS background images keyed by number, because its format-icons takes text rather than paths; those names now live in the Windows singleton and are resolved through the active icon theme, so a theme switch follows the drawer and the bar and the switcher agree. A named workspace, or one past eight, falls back to its number, and so does an icon the active theme cannot resolve. --- window-switcher/README.md | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'window-switcher/README.md') diff --git a/window-switcher/README.md b/window-switcher/README.md index a9ddbd4..0f1cb90 100644 --- a/window-switcher/README.md +++ b/window-switcher/README.md @@ -15,7 +15,7 @@ a rofi list that showed the same windows as text. │ └────────────────────┘ └────────────────────┘ │ │ firefox kitty │ │ a page title, elided... ~/Programming/GIT/... │ - │ [1] [4] │ + │ [browser icon] [server icon] │ │ │ └──────────────────────────────────────────────────────────────┘ @@ -23,6 +23,14 @@ The cards are ordered most recently used first, so the window you just left is the first one, the same order ALT+TAB implies. Windows on a `special:` workspace are the scratchpad, which has its own bind, and are left out. +Each card's desktop marker is the same icon waybar draws for that workspace, so +the switcher and the bar agree rather than showing a bare number. waybar keeps +the eight icons as CSS background images keyed by workspace number +(`styles/modules.css` in `waybar-theme-udt`), because its `format-icons` takes +text and not paths; here the same names are resolved through the active icon +theme with `Quickshell.iconPath`. A named workspace, or one past eight, has no +icon and falls back to `[name]`. + With nothing to switch to it says so, because a full-screen dim with nothing in it reads as a hang. -- cgit v1.2.3