Кто-нибудь понял, как получить из Xserver список всех открытых окон?
Как получить список открытых окон с xserver
Ответ 1
В CLI вы можете использовать
xwininfo -tree -root
Если вам нужно сделать это в своем собственном коде, вам нужно использовать функцию XQueryTree
из библиотеки Xlib
.
Ответ 2
Вы также можете посмотреть значение _NET_CLIENT_LIST
корневого окна. Это устанавливается большинством современных оконных менеджеров:
xprop -root|grep ^_NET_CLIENT_LIST
Это значение можно легко получить программным путем, см. документацию Xlib!