각 디스플레이에 대한 애플리케이션 식별

각 디스플레이에 대한 애플리케이션 식별

두 개의 모니터에 걸쳐 있는 데스크탑이 있습니다.

오른쪽 모니터는 대기 모드(화면이 검은색)이고 필요할 때만 활성화됩니다.

대기 모드에서 앱이 오른쪽 모니터에 열리지만 눈에 띄지 않는 경우가 있습니다.

올바른 모니터에서 응용 프로그램이 실행되고 있는지 확인하는 방법은 무엇입니까?


데비안 11.5 Bullseye, Openbox, LXDE, Tint2


참고 사항:

"별도의 작업 표시줄"을 구성했습니다. 왼쪽 모니터의 응용 프로그램은 왼쪽 작업 표시줄에 나타나고, 오른쪽 모니터의 응용 프로그램은 오른쪽 작업 표시줄에 나타납니다.

모든 앱을 왼쪽 작업 표시줄에 표시하게 하면 오른쪽 모니터의 앱은 무시되지 않지만 작업 표시줄 구분이 바뀌지 않아야 합니다.

또한 바탕 화면을 마우스 가운데 버튼으로 클릭하면 다른 모니터에 있는 모든 응용 프로그램이 표시되지만 이 작업을 수행해야 한다는 점을 알고 있어야 합니다.

답변1

@meuh 팁을 주셔서 감사합니다. Devilspie2를 확인한 다음 Devilspie를 확인한 다음 X 창 ID를 쿼리해야 한다는 것을 깨달았습니다. xwininfo로 시도했지만 실패하고 xdotool로 시도한 다음 wmctl로 성공했습니다.

wmctrl -l -G

세 번째 열의 x 값을 사용하여 모든 활성 창의 형상을 제공합니다(출력 단축).

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

왼쪽 모니터의 너비(여기서는 1920)보다 큰 세 번째 열의 값은 오른쪽 모니터의 창입니다.

여기에서 awk를 사용할 수 있습니다.

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

출력이 비어 있지 않으면 오른쪽 모니터에 창이 하나 이상 있습니다.

관련 정보