Use este shellscript simples antes e depois da suspensão:
#!/bin/bash
# Get the coordinates of the active window's
# top-left corner, and the window's size.
# This can be saved & loaded
getpos(){
wmctrl -l -G > /dev/shm/winposs
}
setpos(){
while read -r id g x y w h host app;do
IFS=" ," read ta tb a b c d <<<$(xprop -id "$id" _NET_FRAME_EXTENTS 2>/dev/null)
[ -z $d ] && continue
wmctrl -i -r $id -e "$g,$((x-$d)),$((y-$c)),$((w+$d+$b)),$((h+$c+$a))" 2>/dev/null
done < /dev/shm/winposs
}
case $1 in
get) echo getting window positions
getpos
;;
set) echo setting window positions
setpos
;;
run) getpos
shift
${@}
setpos
;;
*) echo "Usage: ${0##*/}"' [get|set|run <command>]'
;;
esac