__wakey_start=nil __wakey_cmd=
: ${LONG_RUNNING_COMMAND_TIMEOUT=10}; export LONG_RUNNING_COMMAND_TIMEOUT
+: ${IGNORE_WINDOW_CHECK=nil}; export IGNORE_WINDOW_CHECK
: ${LONG_RUNNING_IGNORE_LIST=}; export LONG_RUNNING_IGNORE_LIST
__wakey_preexec () {
__wakey_precmd () {
typeset icon head rc=$? cmd suppress=nil
+ typeset -i 10 win i
typeset -F now=$EPOCHREALTIME
case $__wakey_start in
*)
if (( now - __wakey_start < LONG_RUNNING_COMMAND_TIMEOUT )); then
suppress=t
+ else
+ case $IGNORE_WINDOW_CHECK in
+ t) ;;
+ *)
+ win=$(xprop -root _NET_ACTIVE_WINDOW | sed 's/^.*# //')
+ if (( win == WINDOWID )); then
+ suppress=t
+ else
+ for i in $(xwininfo -children -id $win |
+ sed -n '/^ *[0-9]\+ child\(ren\)\?[.:]$/,$ {
+ /^ *\(0x[0-9a-f]\+\) (.*$/s//\1/p
+ }')
+ do
+ if (( i == WINDOWID )) then; suppress=t; break; fi
+ done
+ fi
+ esac
fi
case $suppress in
t) ;;