fixing things for eww and hyprland
This commit is contained in:
parent
d34f4ab2b4
commit
849b950c02
8 changed files with 29 additions and 102 deletions
0
.config/eww/scripts/change-active-workspace
Normal file → Executable file
0
.config/eww/scripts/change-active-workspace
Normal file → Executable file
0
.config/eww/scripts/get-active-workspace
Normal file → Executable file
0
.config/eww/scripts/get-active-workspace
Normal file → Executable file
2
.config/eww/scripts/get-workspaces
Normal file → Executable file
2
.config/eww/scripts/get-workspaces
Normal file → Executable file
|
@ -2,7 +2,7 @@
|
|||
|
||||
spaces (){
|
||||
WORKSPACE_WINDOWS=$(hyprctl workspaces -j | jq 'map({key: .id | tostring, value: .windows}) | from_entries')
|
||||
seq 1 10 | jq --argjson windows "${WORKSPACE_WINDOWS}" --slurp -Mc 'map(tostring) | map({id: ., windows: ($windows[.]//0)})'
|
||||
seq 1 5 | jq --argjson windows "${WORKSPACE_WINDOWS}" --slurp -Mc 'map(tostring) | map({id: ., windows: ($windows[.]//0)})'
|
||||
}
|
||||
|
||||
spaces
|
||||
|
|
|
@ -1,18 +0,0 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
focused_workspace () {
|
||||
hyprctl monitors | grep -B 5 "focused: yes" | awk 'NR == 1{print $3}'
|
||||
}
|
||||
|
||||
occupied_workspace () {
|
||||
hyprctl workspaces
|
||||
}
|
||||
|
||||
case $1 in
|
||||
fw)
|
||||
focused_workspace
|
||||
;;
|
||||
ow)
|
||||
occupied_workspace
|
||||
;;
|
||||
esac
|
|
@ -1,67 +0,0 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
#define icons for workspaces 1-9
|
||||
ic=(0 )
|
||||
|
||||
#initial check for occupied workspaces
|
||||
for num in $(hyprctl workspaces | grep ID | awk '{print $3}'); do
|
||||
export o"$num"="$num"
|
||||
done
|
||||
|
||||
#initial check for focused workspace
|
||||
for num in $(hyprctl monitors | grep -B 5 "focused: yes" | awk 'NR==1{print $3}'); do
|
||||
export f"$num"="$num"
|
||||
export fnum=f"$num"
|
||||
export mon=$(hyprctl monitors | grep -B 2 "\($num\)" | awk 'NR==1{print $2}')
|
||||
done
|
||||
|
||||
workspaces() {
|
||||
if [[ ${1:0:9} == "workspace" ]] && [[ ${1:11} != "special" ]]; then #set focused workspace
|
||||
unset -v "$fnum"
|
||||
num=${1:11}
|
||||
export f"$num"="$num"
|
||||
export fnum=f"$num"
|
||||
|
||||
elif [[ ${1:0:10} == "focusedmon" ]]; then #set focused workspace following monitor focus change
|
||||
unset -v "$fnum"
|
||||
string=${1:12}
|
||||
num=${string##*,}
|
||||
export mon=${string/,*/}
|
||||
export f"$num"="$num"
|
||||
export fnum=f"$num"
|
||||
|
||||
elif [[ ${1:0:13} == "moveworkspace" ]] && [[ ${1##*,} == "$mon" ]]; then #Set focused workspace following swapactiveworkspace
|
||||
unset -v "$fnum"
|
||||
string=${1:15}
|
||||
num=${string/,*/}
|
||||
export f"$num"="$num"
|
||||
export fnum=f"$num"
|
||||
|
||||
elif [[ ${1:0:15} == "createworkspace" ]]; then #set Occupied workspace
|
||||
num=${1:17}
|
||||
export o"$num"="$num"
|
||||
export onum=o"$num"
|
||||
|
||||
elif [[ ${1:0:16} == "destroyworkspace" ]]; then #unset unoccupied workspace
|
||||
num=${1:18}
|
||||
unset -v o"$num"
|
||||
fi
|
||||
}
|
||||
module() {
|
||||
#output eww widget
|
||||
echo "(eventbox :onscroll \"echo {} | sed -e 's/up/-1/g' -e 's/down/+1/g' | xargs hyprctl dispatch workspace\" :valign \"center\" \
|
||||
(box :class \"works\" :orientation \"h\" :spacing 5 :space-evenly \"false\" :valign \"center\" \
|
||||
(button :onclick \"hyprctl dispatch workspace 1\" :class \"0$o1$f1\" \"${ic[1]}\") \
|
||||
(button :onclick \"hyprctl dispatch workspace 2\" :class \"0$o2$f2\" \"${ic[2]}\") \
|
||||
(button :onclick \"hyprctl dispatch workspace 3\" :class \"0$o3$f3\" \"${ic[3]}\") \
|
||||
(button :onclick \"hyprctl dispatch workspace 4\" :class \"0$o4$f4\" \"${ic[4]}\") \
|
||||
)\
|
||||
)"
|
||||
}
|
||||
|
||||
module
|
||||
|
||||
socat -u UNIX-CONNECT:/tmp/hypr/"$HYPRLAND_INSTANCE_SIGNATURE"/.socket2.sock - | while read -r event; do
|
||||
workspaces "$event"
|
||||
module
|
||||
done
|
Loading…
Add table
Add a link
Reference in a new issue