From b99e6c06249670422c58bcd995bc1e552fc77d94 Mon Sep 17 00:00:00 2001 From: wisatong Date: Sat, 2 Jan 2021 07:13:21 +0700 Subject: Fix get_class() only grab last class --- bspswallow | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'bspswallow') diff --git a/bspswallow b/bspswallow index 35784a2..51ed528 100755 --- a/bspswallow +++ b/bspswallow @@ -6,7 +6,9 @@ get_class() { if [ -z "$id" ]; then echo "" else - xprop -id "$id" | sed -n '/WM_CLASS\|WM_COMMAND/s/.*"\(.*\)".*/\1/p' + xprop -id "$id" | sed -n \ + -e '/WM_CLASS/s/\( "\)/\n/g; s/[^\n]*\n\([^"]*\)[^\n]*/\1\n/g' \ + -e '/WM_COMMAND/s/[^"]*/\n\n/1; s/\n"//1; s/\n\([^"]*\)".*/\n\1/; /\n/p' fi } -- cgit v1.2.3 From 9967cc81aa96a30f1f6b64eee9112a354439648e Mon Sep 17 00:00:00 2001 From: JopStro Date: Mon, 1 Feb 2021 15:30:42 +0000 Subject: Modify to work with get_class change --- bspswallow | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'bspswallow') diff --git a/bspswallow b/bspswallow index 1466857..409d36b 100755 --- a/bspswallow +++ b/bspswallow @@ -8,7 +8,7 @@ get_class() { else xprop -id "$id" | sed -n \ -e '/WM_CLASS/s/\( "\)/\n/g; s/[^\n]*\n\([^"]*\)[^\n]*/\1\n/g' \ - -e '/WM_COMMAND/s/[^"]*/\n\n/1; s/\n"//1; s/\n\([^"]*\)".*/\n\1/; /\n/p' + -e '/WM_COMMAND/s/[^"]*/\n\n/1; s/\n"//1; s/\n\([^"]*\)".*/\n\1/; /\n/p' | sed '/^$/d' | head -n1 fi } @@ -33,7 +33,7 @@ swallow() { swallowingid=$(bspc query -N -n last) if [ "$addedtodesktop" = "$lasttermdesktop" ] && check_swallowing_process "$swallowerid" "$swallowingid"; then cat ~/.config/bspwm/noswallow ~/.config/bspwm/terminals | grep "^$(get_class "$swallowerid")$" && return - grep "^$(get_class "$swallowingid")$" ~/.config/bspwm/terminals || return + grep -i "^$(get_class "$swallowingid")$" ~/.config/bspwm/terminals || return echo "$swallowerid $swallowingid" >> /tmp/swallowids bspc node "$swallowingid" --flag hidden=on fi -- cgit v1.2.3