我在緩慢的網絡連接上運行X.如何知道窗口何時可見?我需要等待,以便可以在可見窗口上執行另一個操作。X11:等到窗口可見爲止?
xterm -T foo &
# how to flush the display, or wait until the window is visible?
# polling the visibility would be acceptable as well
xmovewindow foo 10 20
更新:感謝吉姆劉易斯,這裏有一個快速殼功能,可以做到這一點。
function xwait() {
while ! xwininfo -name $1|grep 'Map State: IsViewable';do sleep 1;done
}
xterm -T foo &
xwait foo
xmovewindow foo 10 20
IIRC, Solaris有一個名稱如'toolwait'的命令,試圖這樣做,或多或少。但是,它在子進程創建窗口時檢測到ISTR,而不是必須顯示。 – 2009-08-13 05:24:23