Work on Sway support for the window lister. Unfortunately, most of the window IDs that get returned are "None" so you can't actually select the window, but it does list them now.

This commit is contained in:
stormdragon2976 2023-06-14 02:05:36 -04:00
parent 1de8cde4cf
commit 50f7bd809a

View File

@ -1,5 +1,9 @@
#!/usr/bin/env bash #!/usr/bin/env bash
path="$(readlink -f $0)"
path="${path%/*/*}"
path="${path##*/}"
if [[ "$path" == "i3" ]]; then
mapfile -t windowList < <(python3 -c ' mapfile -t windowList < <(python3 -c '
import i3ipc import i3ipc
@ -13,11 +17,28 @@ id="$(yad --title "I38" --list --separator "" --column "id" --column "Select Win
if [[ -z "${id}" ]]; then if [[ -z "${id}" ]]; then
exit 0 exit 0
fi fi
path="$(readlink -f $0)"
path="${path%/*/*}"
path="${path##*/}"
if [[ "$path" == "i3" ]]; then
i3-msg \[id="${id}"\] focus i3-msg \[id="${id}"\] focus
else else
mapfile -t windowList < <(python3 -c '
import i3ipc
i3 = i3ipc.Connection()
for con in i3.get_tree():
if con.window or con.type == "con":
if con.name:
print(con.window)
print(con.name)')
# Remove the first entry if it is "none"
if [[ "${windowList[0]}" == "none" ]]; then
unset "windowList[0]"
fi
id="$(yad --title "I38" --list --separator "" --column "id" --column "Select Window" --hide-column 1 --print-column 1 "${windowList[@]}")"
if [[ -z "${id}" ]]; then
exit 0
fi
swaymsg \[id="${id}"\] focus swaymsg \[id="${id}"\] focus
fi fi