ウィンドウマネージャと1つのフルスクリーンプログラムで最小限のXセッションを実行したい。ウィンドウマネージャが完全に初期化されたことをプログラマチックに判断する信頼できる方法はありますか?
metacity & # this could be any window manager
exec my-fullscreen-app
しかし、これらを並列に発売されているため、競合状態のビットがあります。これを行うには明白な方法は、.xinitrcの中で、このようなものを入れています。ウィンドウマネージャの準備が整う前に自分のアプリケーションを表示させたくないので、ウィンドウの表示サイズをフルスクリーンモードに変更する必要があります。ウィンドウマネージャが最初に初期化を完了したことを確認したい。
私が思い付くした最高のは、このようなものです:
metacity &
while ! xprop -root | grep -q _NET_SUPPORTING_WM_CHECK
do
sleep 0.1
done
sleep 0.3
exec my-fullscreen-app
しかし_NET_SUPPORTING_WM_CHECKはルートウィンドウに設定されているからといって、必ずしもWMが本当に準備ができていることを意味するものではありません、そして0.3それはいくつかのシステムで深刻な過度の可能性があり、他の人に完全に不十分かもしれないクルーゲである後に2番目の睡眠。
ウィンドウマネージャが完全に初期化されていることを確実に検出するには、より良い方法がありますか?
私はここで何かを見逃しているかもしれませんが、ウィンドウマネージャーがまったく必要ない場合はありませんか? –
Karl、ウィンドウを適切にフルスクリーンするにはウィンドウマネージャが必要です。また、アプリが実行中に他のアプリを起動する可能性もあり、実行中のウィンドウマネージャが正しく機能する必要があります。 (私はその部分を言及することを怠ったと思う) – mackstann