summaryrefslogtreecommitdiff
path: root/.config/eww/scripts
diff options
context:
space:
mode:
authorThomas Voss <mail@thomasvoss.com> 2024-02-28 13:42:48 +0100
committerThomas Voss <mail@thomasvoss.com> 2024-02-28 13:42:48 +0100
commit5123a3eda25957e1efe4e0b280e3c25e414a2b87 (patch)
treeb740964bd44e9c2920e6b39bb4faea8171406abe /.config/eww/scripts
parent4d13e0ae5991af6a4858afaa98079cb824c02cf0 (diff)
eww, Hyprland: Fix various issues related to multimonitor
Diffstat (limited to '.config/eww/scripts')
-rwxr-xr-x.config/eww/scripts/active-workspace-listener2
-rwxr-xr-x.config/eww/scripts/workspace-list-listener25
2 files changed, 12 insertions, 15 deletions
diff --git a/.config/eww/scripts/active-workspace-listener b/.config/eww/scripts/active-workspace-listener
index 3f57ec5..3c47e87 100755
--- a/.config/eww/scripts/active-workspace-listener
+++ b/.config/eww/scripts/active-workspace-listener
@@ -11,4 +11,4 @@ readonly IPC=/tmp/hypr/$HYPRLAND_INSTANCE_SIGNATURE/.socket2.sock
hyprctl -j monitors
esac
done
-} | jq -cr '[.[] | .activeWorkspace.name]'
+} | jq -cr '[.[] | .activeWorkspace.id % 10]'
diff --git a/.config/eww/scripts/workspace-list-listener b/.config/eww/scripts/workspace-list-listener
index 9ad35ca..5ab5c19 100755
--- a/.config/eww/scripts/workspace-list-listener
+++ b/.config/eww/scripts/workspace-list-listener
@@ -2,20 +2,17 @@
readonly IPC=/tmp/hypr/$HYPRLAND_INSTANCE_SIGNATURE/.socket2.sock
-ws="`hyprctl -j workspaces | jq -r 'sort_by(.id) | .[] | .name'`"
-jo -a $ws
+hyptctl -j workspaces | jq -cr '
+ [.[].id]
+ | group_by(. / 10 | floor)
+ | [.[] | map(. % 10)]
+'
socat -u UNIX-CONNECT:"$IPC" - \
| stdbuf -oL grep -E '^(create|destroy)workspace>>' \
- | while IFS='>>' read -r e _ n
- do
- case "$e" in
- c*)
- ws="`printf '%s\n%s\n' "$ws" $n | sort -n`"
- ;;
- d*)
- ws="`echo "$ws" | grep -v "^$n$"`"
- ;;
- esac
- jo -a $ws
- done
+ | while read -r _; do hyprctl -j workspaces; done \
+ | jq -cr '
+ [.[].id]
+ | group_by(. / 10 | floor)
+ | [.[] | map(. % 10) | sort_by(.)]
+ '