diff options
| author | Danilo M. <danix@danix.xyz> | 2026-09-12 18:34:41 +0200 |
|---|---|---|
| committer | Danilo M. <danix@danix.xyz> | 2026-09-12 18:34:41 +0200 |
| commit | 61444966c743ee88b8823f986519b70d59405805 (patch) | |
| tree | 5a04b721b2609651b2ed2417010b4d7abbe7068a /docs/superpowers/specs/2026-09-12-window-switcher-design.md | |
| parent | aed6d2ba552a43d91dd283d567b837a2b7712697 (diff) | |
| download | quickshell-61444966c743ee88b8823f986519b70d59405805.tar.gz quickshell-61444966c743ee88b8823f986519b70d59405805.zip | |
docs(window-switcher): an empty state, rather than opening on nothing
ALT + TAB with no windows would otherwise give a full-screen dim with
nothing in it, which reads as a hang. It is reachable from a fresh
session, and from closing the last window in the switcher itself, which
stays open by design. It now says so instead.
The empty state has no card to click, so the backdrop closes the overlay
on click as well as on Escape. That applies generally, not only when
there is nothing to show.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01SYg4wYHq5XNbiVmMeKRb1S
Diffstat (limited to 'docs/superpowers/specs/2026-09-12-window-switcher-design.md')
| -rw-r--r-- | docs/superpowers/specs/2026-09-12-window-switcher-design.md | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/docs/superpowers/specs/2026-09-12-window-switcher-design.md b/docs/superpowers/specs/2026-09-12-window-switcher-design.md index 5689ace..487de1d 100644 --- a/docs/superpowers/specs/2026-09-12-window-switcher-design.md +++ b/docs/superpowers/specs/2026-09-12-window-switcher-design.md @@ -71,6 +71,24 @@ Both corner overlays need a scrim or shadow behind them. A themed icon drawn over an arbitrary window preview can land on a same-coloured region and disappear, a light icon on a white page being the obvious case. +## With nothing to show + +When the filtered list is empty, the overlay still opens, and shows two centred +lines in place of the grid: + + Nothing here but hopes and dreams... + go create something beautiful! + +The second is larger and dimmer than the first. + +The state is reachable two ways: a fresh session before anything is launched, +and closing the last window from the switcher itself, which stays open by +design. Opening on nothing was considered and rejected in favour of this, +because a full-screen dim with nothing in it reads as a hang. + +Since there is no card to click in this state, the backdrop closes the overlay +on click as well as on Escape. That holds generally, not only when empty. + ## Data One source: `Hyprland.toplevels`, refreshed with `Hyprland.refreshToplevels()` @@ -105,6 +123,7 @@ open; there is no attempt to detect the ALT release. | arrows / TAB | move the selection | | Enter | focus the selection, close the overlay | | Escape | close the overlay, focus nothing | +| click the backdrop | close the overlay, focus nothing | The close button leaves the overlay open because closing is a side errand: a dismissal would mean reopening to close a second window. The card disappears on |
