Compare commits

..

No commits in common. "freez" and "master" have entirely different histories.

View File

@ -58,36 +58,3 @@ case $workspace_number in
swaymsg input type:keyboard xkb_switch_layout 0 swaymsg input type:keyboard xkb_switch_layout 0
;; ;;
esac esac
#
# Freeze manager
#
workspaces_data=$(swaymsg -t get_tree | jq --arg ws1 "$workspace_number" --arg ws2 "$last_workspace" '
.nodes[]
| select(.type == "output")
| .nodes[]
| select(.type == "workspace" and (.name == $ws1 or .name == $ws2))
| {
workspace: .name,
pids: [(.nodes[]?, .floating_nodes[]?) | select(has("pid")) | .pid]
}
')
pids_unfreeze=$(echo "$workspaces_data" | jq --arg ws "$workspace_number" '
select(.workspace == $ws) | .pids[]
' | tr '\n' ',')
if [ -n "$pids_unfreeze" ]; then
pkill -SIGCONT -g "${pids_unfreeze%,}"
fi
case $last_workspace in
12) exit 0;;
esac
pids_freeze=$(echo "$workspaces_data" | jq --arg ws "$last_workspace" '
select(.workspace == $ws) | .pids[]
' | tr '\n' ',')
if [ -n "$pids_freeze" ]; then
pkill -SIGSTOP -g "${pids_freeze%,}"
fi