X ウィンドウ コマンドのオプションに渡すのに適したジオメトリを取得する方法を見つけて、-geometry
GNOME 自体が管理するもの (GNOME パネル ウィンドウなど) と重複しない X ルート ウィンドウ全体をカバーすることが保証されるようにする必要があります。これは、X ルート ウィンドウ全体のジオメトリを返す出力と同じではなく、xwininfo -root
GNOME パネルによって消費される領域が必ず含まれます。KDE を使用しなくなったので、KDE についても同じである必要はありません。
できれば、X Windows コマンド ライン ユーティリティを使用してそのジオメトリを取得でき、Xlib プログラミングに頼る必要がないようにしたいと考えています (つまり、スクリプトから取得したいと考えています)。スクリプトは、GNOME コマンドライン ユーティリティに依存する場合があります。
基本的な計算を使用して GNOME パネルを「差し引く」ことはオプションですが、唯一の GNOME パネル X ウィンドウのみを考慮する必要があるという保証が得られる場合に限ります。しかし、考慮する必要があるのは GNOME パネル ウィンドウだけではないと思います。マウスがXルートの一番下に移動したときにのみ表示されるため、「下部拡張エッジパネル」として表示されるウィンドウが下部にあるため、xwininfo
不動産に関して競合している場合と競合していない場合があるためです。窓。しかし、本当に GNOME パネルだけを検討するのであれば、その「引き算」方法で十分かもしれません。
私の使用例は次のとおりです。さまざまな Microsoft Windows デスクトップに RDP するためにrdesktopを使用しています。rdesktop
X ウィンドウは表示後にサイズ変更できないため、実行前に X ウィンドウのサイズを決定する必要
があります。GNOME パネルのような GNOME 管理のウィンドウと競合しない限り、そのウィンドウがルート ウィンドウの領域を最大限に消費する必要があります。私が今行っているのは、 を呼び出すラッパー スクリプトで特定のデスクトップのジオメトリをハードコーディングすることrdesktop
ですが、ディスプレイ ハードウェアが必然的に異なるさまざまなデスクトップで作業し、結果として X ルート ウィンドウにバリエーションが生じるため、必要なことを実行できません。ジオメトリ。X ルート ウィンドウのジオメトリをrdesktop
コマンドを実行すると、RDP ウィンドウが GNOME デスクトップの表示領域を超えて拡張されます。これは、GNOME のウィンドウ マネージャーが実際の左上隅を押し下げて GNOME パネルとの重なりを回避するためです。その結果、RDP ウィンドウの一部がマウス操作から隠されます。 .
xwininfo -root -children
を使用して、X ルートの直系の子孫に、これらの次元を抽出するために一貫して使用できるウィンドウである X ウィンドウを見つけることができるかどうかを確認しようとしましたが、名前は GNOME デスクトップソフトウェアの実装の詳細のように見えます (またはメタシティ WM)、またはその両方であり、私が依存したいものではないかもしれません。