2016-01-04 14:46:34 -05:00
|
|
|
#!/usr/bin/env bash
|
|
|
|
|
|
|
|
# wait till it is up, run rofi with error message
|
|
|
|
sleep 1;
|
2016-01-05 12:19:35 -05:00
|
|
|
xterm -T MonkeySee sh &
|
2016-01-04 14:46:34 -05:00
|
|
|
XPID=$!
|
2017-07-27 12:08:23 -04:00
|
|
|
echo "Started MonkeySee xterm: pid ${XPID}"
|
2016-01-04 14:46:34 -05:00
|
|
|
sleep 1;
|
2016-01-05 12:19:35 -05:00
|
|
|
xterm -T TermUnwanted sh &
|
|
|
|
TPID=$!
|
2017-07-27 12:08:23 -04:00
|
|
|
echo "Started TermUnwanted xterm: pid ${TPID}"
|
2016-01-05 12:19:35 -05:00
|
|
|
sleep 1;
|
|
|
|
rofi -modi window -show window > output.txt &
|
2016-01-04 14:46:34 -05:00
|
|
|
RPID=$!
|
2017-07-27 12:08:23 -04:00
|
|
|
echo "Started rofi: pid ${RPID}"
|
2016-01-04 14:46:34 -05:00
|
|
|
|
|
|
|
# send enter.
|
|
|
|
sleep 5;
|
2016-01-05 12:19:35 -05:00
|
|
|
xdotool type 'MonkeySee'
|
2016-01-04 14:46:34 -05:00
|
|
|
sleep 0.4
|
|
|
|
xdotool key Return
|
|
|
|
sleep 1;
|
|
|
|
xdotool key Ctrl+d
|
2016-01-05 12:24:47 -05:00
|
|
|
sleep 1;
|
2017-07-27 12:08:23 -04:00
|
|
|
|
|
|
|
echo -n "Killing TermUnwanted: "
|
|
|
|
if kill ${TPID}; then
|
|
|
|
echo "done"
|
2017-07-27 17:43:47 -04:00
|
|
|
wait ${TPID}
|
2017-07-27 12:08:23 -04:00
|
|
|
fi
|
|
|
|
|
2018-07-10 07:53:40 -04:00
|
|
|
if ps -q ${XPID} # pgrep -u $USER xterm
|
2016-01-05 12:24:47 -05:00
|
|
|
then
|
2017-07-27 12:08:23 -04:00
|
|
|
echo "Found remaining xterms: $(pgrep -u $USER xterm)"
|
2016-01-05 12:24:47 -05:00
|
|
|
kill ${XPID}
|
2018-07-10 07:53:40 -04:00
|
|
|
fi
|
|
|
|
if ps -q ${RPID}
|
|
|
|
then
|
|
|
|
echo "Rofi still running"
|
2016-01-05 12:24:47 -05:00
|
|
|
kill ${RPID}
|
|
|
|
exit 1
|
|
|
|
fi
|
2016-01-04 14:46:34 -05:00
|
|
|
# Get result, kill xvfb
|
|
|
|
wait ${RPID}
|
|
|
|
RETV=$?
|
|
|
|
exit ${RETV}
|