diff options
| author | 2 * r + 2 * t <61896496+soramanew@users.noreply.github.com> | 2025-08-09 17:33:16 +1000 |
|---|---|---|
| committer | 2 * r + 2 * t <61896496+soramanew@users.noreply.github.com> | 2025-08-09 17:33:16 +1000 |
| commit | bf558cfe83c48b0020485ddc001adebdd93ca248 (patch) | |
| tree | b1f07860ffb625d279d20990464a7ac11e59d440 | |
| parent | picker: fix clients for special ws (diff) | |
| download | caelestia-shell-bf558cfe83c48b0020485ddc001adebdd93ca248.tar.gz caelestia-shell-bf558cfe83c48b0020485ddc001adebdd93ca248.tar.bz2 caelestia-shell-bf558cfe83c48b0020485ddc001adebdd93ca248.zip | |
bar: better scroll actions
Also fix workspaces interaction area
| -rw-r--r-- | modules/bar/Bar.qml | 4 | ||||
| -rw-r--r-- | modules/bar/components/ActiveWindow.qml | 30 | ||||
| -rw-r--r-- | modules/drawers/Interactions.qml | 20 |
3 files changed, 21 insertions, 33 deletions
diff --git a/modules/bar/Bar.qml b/modules/bar/Bar.qml index 7ed733e..22f21dd 100644 --- a/modules/bar/Bar.qml +++ b/modules/bar/Bar.qml @@ -97,8 +97,8 @@ Item { CustomMouseArea { anchors.fill: parent - anchors.leftMargin: -Config.border.thickness - anchors.rightMargin: -Config.border.thickness + anchors.leftMargin: -Math.max(Appearance.padding.smaller, Config.border.thickness) + anchors.rightMargin: -Math.max(Appearance.padding.smaller, Config.border.thickness) function onWheel(event: WheelEvent): void { const activeWs = Hyprland.activeToplevel?.workspace?.name; diff --git a/modules/bar/components/ActiveWindow.qml b/modules/bar/components/ActiveWindow.qml index de4202d..de0f0ad 100644 --- a/modules/bar/components/ActiveWindow.qml +++ b/modules/bar/components/ActiveWindow.qml @@ -1,7 +1,6 @@ pragma ComponentBehavior: Bound import qs.components -import qs.components.controls import qs.services import qs.utils import qs.config @@ -17,35 +16,6 @@ Item { implicitWidth: child.implicitWidth implicitHeight: child.implicitHeight - CustomMouseArea { - anchors.top: parent.top - anchors.bottom: child.top - anchors.left: parent.left - anchors.right: parent.right - - function onWheel(event: WheelEvent): void { - if (event.angleDelta.y > 0) - Audio.incrementVolume(); - else if (event.angleDelta.y < 0) - Audio.decrementVolume(); - } - } - - CustomMouseArea { - anchors.top: child.bottom - anchors.bottom: parent.bottom - anchors.left: parent.left - anchors.right: parent.right - - function onWheel(event: WheelEvent): void { - const monitor = root.monitor; - if (event.angleDelta.y > 0) - monitor.setBrightness(monitor.brightness + 0.1); - else if (event.angleDelta.y < 0) - monitor.setBrightness(monitor.brightness - 0.1); - } - } - Item { id: child diff --git a/modules/drawers/Interactions.qml b/modules/drawers/Interactions.qml index 1cd1736..6b276a0 100644 --- a/modules/drawers/Interactions.qml +++ b/modules/drawers/Interactions.qml @@ -1,3 +1,4 @@ +import qs.components.controls import qs.services import qs.config import qs.modules.bar.popouts as BarPopouts @@ -5,7 +6,7 @@ import qs.modules.osd as Osd import Quickshell import QtQuick -MouseArea { +CustomMouseArea { id: root required property ShellScreen screen @@ -42,6 +43,23 @@ MouseArea { return y > root.height - Config.border.thickness - panel.height - Config.border.rounding && withinPanelWidth(panel, x, y); } + function onWheel(event: WheelEvent): void { + if (event.x < bar.implicitWidth) { + if (event.y < screen.height / 2) { + if (event.angleDelta.y > 0) + Audio.incrementVolume(); + else if (event.angleDelta.y < 0) + Audio.decrementVolume(); + } else { + const monitor = Brightness.getMonitorForScreen(screen); + if (event.angleDelta.y > 0) + monitor.setBrightness(monitor.brightness + 0.1); + else if (event.angleDelta.y < 0) + monitor.setBrightness(monitor.brightness - 0.1); + } + } + } + anchors.fill: parent hoverEnabled: true |