Как получить список открытых окон из xserver - PullRequest
34 голосов
/ 31 октября 2008

Кто-нибудь понял, как получить от Xserver список всех открытых окон?

Ответы [ 2 ]

79 голосов
/ 31 октября 2008

Из CLI вы можете использовать

xwininfo -tree -root

Если вам нужно сделать это в своем собственном коде, вам нужно использовать функцию XQueryTree из библиотеки Xlib.

15 голосов
/ 19 июня 2009

Вы также можете взглянуть на значение _NET_CLIENT_LIST корневого окна. Это устанавливается большинством современных оконных менеджеров:

xprop -root|grep ^_NET_CLIENT_LIST

Это значение можно легко получить программным способом, см. Документацию Xlib!

...