#!/bin/sh
set -e
TIMEOUT=20

case "$1" in
    inside)
	# run
	kbibtex 2>&1 &
	sleep $TIMEOUT
	# send save config
	xdotool key alt+s
	# check if exist
	WINDOSWSID=$(timeout $TIMEOUT xdotool search --sync --class kbibtex)
	test "X$WINDOSWSID" != "X"
	# send quit
	xdotool windowclose "$WINDOSWSID"
	sleep $TIMEOUT
	# check if close
	test "X$(xdotool search --class kbibtex)" = "X"
	exit 0
	;;
    insideorgrab)
	if sh $0 inside; then
	    exit 0;
	else
	    import -verbose -window root "$SCREENSHOT" || true
	    exit 1;
	fi
	exit 1
	;;
    *)
	tmpdir=$(mktemp -d)
	export tmpdir
	SCREENSHOT="$tmpdir/screnshot.png"
	export SCREENSHOT
	if xvfb-run -a -s "-ac -screen 0 800x600x24" sh $0 insideorgrab; then
	   rm -rf "$tmpdir"
	   exit 0;
	else
	    if test -f "$SCREENSHOT"; then
		echo "SCREENSHOT $SCREENSHOT as base 64 png"
		echo "=========== Cut here ================"
		cat "$SCREENSHOT" | base64
		echo "=========== Cut here ================"
		echo "SCREENSHOT $SCREENSHOT as base 64 png"
	    fi
	fi
	
	rm -rf "$tmpdir"
	exit 1
	;;
esac

exit 1
