diff options
| author | Danilo M. <danix@danix.xyz> | 2026-09-15 17:24:02 +0200 |
|---|---|---|
| committer | Danilo M. <danix@danix.xyz> | 2026-09-15 17:24:02 +0200 |
| commit | a595fc7ca575de9de87f1311f3113f6fd4c6c326 (patch) | |
| tree | d359b86a3d7dcdeb219b2d84768879b0782e8f88 /SPEC.md | |
| parent | 7f52e94d2386858cb32c18d5a5982dbb966cb174 (diff) | |
| download | waybar-theme-udt-a595fc7ca575de9de87f1311f3113f6fd4c6c326.tar.gz waybar-theme-udt-a595fc7ca575de9de87f1311f3113f6fd4c6c326.zip | |
fix: give the launcher a mark for each state
The pill inverts on hover, so one mark could never work: filled dark it
vanished on the dark hover background, filled light it would vanish on the
accent pill at rest. Both halves of that shipped, one after the other.
Removing the hover rule did not help either, because the GTK theme paints its
own hover shade on the button node underneath. Declining to set a background
does not leave the pill alone, it leaves that shade in charge.
So the mark moves out of the image module and into CSS, where a
background-image can be swapped per state: dark on the accent pill at rest,
light on the dark pill hovered, with the hover background set explicitly
rather than left to the theme. install.sh generates both tints from one source
file, so they cannot drift apart in shape.
That makes the launcher a custom module, since an image module's path is read
once and CSS cannot reach inside it. Its format is a single space for the
usual reason: an empty one draws no widget at all.
install.sh also removes the file the old image module left behind. The prune
only clears dangling symlinks, and that one was written as a real file, so
nothing had been removing it.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Diffstat (limited to 'SPEC.md')
| -rw-r--r-- | SPEC.md | 4 |
1 files changed, 2 insertions, 2 deletions
@@ -47,7 +47,7 @@ transparent gaps, so the bar reads as groups rather than a continuous strip. | Position | Module | Icon source | Notes | | --- | --- | --- | --- | -| DP-1 centre | `image#launcher` | `slackware.svg`, shipped here | Accent background, the one always-coloured pill. Opens the quickshell drawer. An `image` module: a `custom` one draws nothing when its format is empty, and the format has to be empty because the mark is an icon. | +| DP-1 centre | `custom/launcher` | `slackware.svg` + `slackware-light.svg`, shipped here | Accent background, the one always-coloured pill. Opens the quickshell drawer. A `custom` module with the mark as a CSS background, because CSS can swap the image on `:hover` and cannot reach inside an `image` module. Its format is a single space: an empty one draws no widget at all. | | left | `clock#date` | `x-office-calendar` | Icon then text. Calendar tooltip kept. | | left | `clock#time` | `clock` | Icon then text. | | left | `hyprland/workspaces` | eight themed icons, via CSS | See below. | @@ -134,7 +134,7 @@ Modular, one file per module, mirroring the current setup: workspaces.jsonc language.jsonc custom/ - launcher.jsonc + launcher.jsonc the drawer button, mark drawn in CSS vmdot.jsonc extras/ taskbar.jsonc |
