各ディスプレイのアプリケーション識別

各ディスプレイのアプリケーション識別

2つのモニタにまたがるデスクトップがあります。

右側のモニターはスタンバイモード(画面は黒色)で、必要なときにのみ有効になります。

スタンバイモードでは、アプリが右側のモニターに開きますが、目立たない場合があります。

正しいモニタでアプリケーションが実行されているかどうかを確認する方法は?


Debian 11.5 Bullseye, Openbox, LXDE, Tint2


注:

「別のタスクバー」を設定しました。左側のモニターのアプリケーションは左側のタスクバーに表示され、右側のモニターのアプリケーションは右側のタスクバーに表示されます。

すべてのアプリを左のタスクバーに表示させると、右側のモニターのアプリは無視されませんが、タスクバーの区切りが変わらないようにする必要があります。

また、デスクトップをマウスの中央ボタンでクリックすると、他のモニターにあるすべてのアプリケーションが表示されますが、これを行う必要があることに注意してください。

ベストアンサー1

@meuh ヒントありがとうございます。 Devilspie2を確認してからDevilspieを確認し、XウィンドウIDを照会する必要があることに気づきました。 xwininfoで試してみましたが失敗し、xdotoolで試してからwmctlで成功しました。

wmctrl -l -G

3列目のx値を使用して、すべてのアクティブウィンドウのジオメトリを提供します(出力を短縮)。

...
0x0300000e  0 190  ...
0x0340000e  0 2110 ...
0x03600003  0 2112 ...

左側のモニターの幅(ここでは1920)より大きい3番目の列の値は、右側のモニターのウィンドウです。

ここでawkを使用できます。

wmctrl -l -G | awk '$3 > 1920'

出力が空でない場合は、右側のモニターに1つ以上のウィンドウがあります。

おすすめ記事