Os gerenciadores de janela que aderem aos padrões FreeDesktop armazenam informações sobre desktops em propriedades da janela raiz , em particular:
-
_NET_NUMBER_OF_DESKTOPS
: número de desktops virtuais -
_NET_CURRENT_DESKTOP
: índice da área de trabalho ativa -
_NET_DESKTOP_NAMES
: lista de nomes dos desktops virtuais
Você pode acessá-los com qualquer interface para XGetWindowProperty
como xprop
. No shell, wmctrl -d
fornece uma maneira prática de listar os desktops virtuais.
Até onde sei, apenas o gerenciador de janelas é notificado quando uma propriedade da janela raiz é alterada. Portanto, se você quiser reagir à troca de área de trabalho virtual, terá que trabalhar com o gerenciador de janelas. Por exemplo, com o seu caso de uso, eu usaria os ganchos Lisp fornecidos pelo meu gerenciador de janelas ( Sawfish ) quando qualquer coisa interessante acontecesse. / p>