Waylandでウィンドウが属しているプロセスを特定したいと思います。xprop
ユーザーがクリックしてウィンドウを選択し、PIDを含むすべてのウィンドウの詳細を出力できるXのようなものはありますか?
xprop
?XWaylandを介してウィンドウ上に非常に多くの詳細が表示されます_NET_WM_PID(CARDINAL)
。これには、発信元プロセスPIDが含まれます。
Waylandでウィンドウが属しているプロセスを特定したいと思います。xprop
ユーザーがクリックしてウィンドウを選択し、PIDを含むすべてのウィンドウの詳細を出力できるXのようなものはありますか?
xprop
?XWaylandを介してウィンドウ上に非常に多くの詳細が表示されます_NET_WM_PID(CARDINAL)
。これには、発信元プロセスPIDが含まれます。
回答:
幸いなことに、Gnome Shellにはこのようなものが組み込まれてxprop
おり、Xorg や Wayland との連携とは異なります。最終的には、KDE、i3などを使用している場合、他のツールの領域に分類される可能性があります。
まず、キーボードの「ALT + F2」キーを入力すると、次のようなメニューが表示されます。
その後、コマンドを発行しますlg
( "looking glass"の場合)。
これにより、見栄えの良いガラスウィンドウが表示され、そこからウィンドウ情報を抽出できます。見ているガラスの右上隅から「ウィンドウ」を選択します。
そこから、ウィンドウのリストが表示され、そこから識別したいウィンドウの名前をクリックできます。
この場合、例としてgeditを選択しました。
その出力の一番上の行に気づくかもしれません:
Inspecting object: object instance proxy GType: MetaWindowX11 ...`
「GType」はMetaWindowX11またはMetaWindowWaylandのいずれかになります。
この情報はhttps://fedoraproject.org/wiki/How_to_debug_Wayland_problemsに記載されています
しました
プロトコル拡張のドラフトxdg-foreign
がありwl_surface
、他のWaylandクライアントによって作成されたのハンドルを取得できます。ハンドルがあれば、クライアントの表面から取得できるものなら何でも取得できます。ただし、このプロトコルにはまだ制限があります。
xprop
ます。実際、異質な表面に描くことさえできます!したがって、これは、どのクライアントからでも、任意のクライアントから表面パラメーターを取得する一般的な方法になることはほとんどありません。しかし、希望を失わないでください。最初はある目的のために設計されたテクノロジーが、車のシガーライターやAndroidのアクセシビリティAPIのように、他の目的で広く使用されるようになった技術史には多くの例があります。さらに、将来的には(たとえば、タイムトラッカーなど)必要性が確実にあるため、タスクにさらに適したプロトコル拡張が登場する可能性があります。