diff options
Diffstat (limited to 'modules/bar/Bar.qml')
| -rw-r--r-- | modules/bar/Bar.qml | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/modules/bar/Bar.qml b/modules/bar/Bar.qml index 914ee24..c851bbc 100644 --- a/modules/bar/Bar.qml +++ b/modules/bar/Bar.qml @@ -80,7 +80,7 @@ Item { anchors.topMargin: Appearance.padding.large } - StyledClippingRect { + StyledRect { id: workspaces anchors.horizontalCenter: parent.horizontalCenter @@ -93,6 +93,20 @@ Item { implicitWidth: workspacesInner.implicitWidth + Appearance.padding.small * 2 implicitHeight: workspacesInner.implicitHeight + Appearance.padding.small * 2 + MouseArea { + anchors.fill: parent + anchors.leftMargin: -BorderConfig.thickness + anchors.rightMargin: -BorderConfig.thickness + + onWheel: event => { + const activeWs = Hyprland.activeClient?.workspace?.name; + if (activeWs?.startsWith("special:")) + Hyprland.dispatch(`togglespecialworkspace ${activeWs.slice(8)}`); + else if (event.angleDelta.y < 0 || Hyprland.activeWsId > 1) + Hyprland.dispatch(`workspace r${event.angleDelta.y > 0 ? "-" : "+"}1`); + } + } + Workspaces { id: workspacesInner |