From 1e0cb0bc16d5971e6e42c105622443d955ccdf5e Mon Sep 17 00:00:00 2001 From: "Danilo M." Date: Fri, 16 Oct 2026 10:19:46 +0200 Subject: feat(shared): one faded glow for hovers across the shells Hover and attention effects were solid: a flat accent ring round the user page's avatar, a flat quarter-disc in the hot corner, and thick accent or white borders on window cards, keycaps and knobs. Glow.qml is a RectangularShadow in the accent, fading out from the shape's edge and in over 140ms, linked into desktop, window-switcher and keybinds like Theme.qml, and all five places use it. Selection borders in the appearance tabs stay: they mark state, not hover. The avatar also gains the hover cue in the first place: the hand cursor never showed under a hyprcursor-only theme, so without it the picture gave no sign it could be clicked. Co-Authored-By: Claude Opus 5.5 --- window-switcher/Glow.qml | 1 + window-switcher/HotCorner.qml | 12 +++++++----- window-switcher/WindowCard.qml | 8 +++++++- 3 files changed, 15 insertions(+), 6 deletions(-) create mode 120000 window-switcher/Glow.qml (limited to 'window-switcher') diff --git a/window-switcher/Glow.qml b/window-switcher/Glow.qml new file mode 120000 index 0000000..779c66a --- /dev/null +++ b/window-switcher/Glow.qml @@ -0,0 +1 @@ +../shared/Glow.qml \ No newline at end of file diff --git a/window-switcher/HotCorner.qml b/window-switcher/HotCorner.qml index cb7d863..eebcf05 100644 --- a/window-switcher/HotCorner.qml +++ b/window-switcher/HotCorner.qml @@ -87,15 +87,17 @@ PanelWindow { } } - // A quarter circle centred on the corner, growing with the dwell. - Rectangle { - readonly property real r: corner.width * corner.progress + // A glow centred on the corner, growing with the dwell. The disc is + // smaller than the window so the fade fits inside it. + Glow { + readonly property real r: corner.width * 0.5 * corner.progress x: corner.width - r y: -r width: 2 * r height: 2 * r radius: r - color: Theme.accent - opacity: 0.6 * corner.progress + blur: r + on: true + opacity: 0.8 * corner.progress } } diff --git a/window-switcher/WindowCard.qml b/window-switcher/WindowCard.qml index 177aac9..be97427 100644 --- a/window-switcher/WindowCard.qml +++ b/window-switcher/WindowCard.qml @@ -40,13 +40,19 @@ Item { HoverHandler { id: cardHover } + Glow { + anchors.fill: box + radius: box.radius + on: cardHover.hovered + } + Rectangle { id: box anchors.fill: parent radius: 10 color: Theme.surface border.color: cardHover.hovered ? Theme.accent : Theme.surfaceAlt - border.width: cardHover.hovered ? 3 : 1 + border.width: 1 // The rect already has the window's shape, so the preview fills it. // The fit is kept for the moment before a capture lands: an -- cgit v1.2.3