From 00a3eb4047b76840233bb9ee872f20b7280ba427 Mon Sep 17 00:00:00 2001 From: "Danilo M." Date: Thu, 15 Oct 2026 11:03:49 +0200 Subject: feat(window-switcher): the expose replaces the grid, with a hot corner Previews are placed at their Expose.js rects and sized to them, so each keeps its window's shape and relative size. Title and close show on hover only, so the scatter stays clean; icon and workspace marker always show. The keyboard selection is gone: this is a pointer feature, and Escape is the one key left. The top-right corner of DP-1 opens it after a 250ms glow that grows out of the corner, which is the warning and the way out. Input is only the corner's 2x2 pixels, since a larger input region would eat clicks on the windows below. It re-arms only when the pointer leaves while the expose is closed, or an Escape with the pointer still in the corner reopens it. It hides while status.gaming is set, read straight from the file: linking shared/Status.qml would start a second game poll and fire presentation side effects twice. Co-Authored-By: Claude Opus 5.5 --- window-switcher/shell.qml | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'window-switcher/shell.qml') diff --git a/window-switcher/shell.qml b/window-switcher/shell.qml index 1581f62..0ebe553 100644 --- a/window-switcher/shell.qml +++ b/window-switcher/shell.qml @@ -15,6 +15,11 @@ import Quickshell.Io ShellRoot { Switcher { id: switcher } + HotCorner { + blocked: switcher.open + onTriggered: switcher.open = true + } + // Bound to ALT + TAB in Hyprland: // `qs -p ipc call switcher toggle` IpcHandler { -- cgit v1.2.3