Detecta o status de tela cheia da janela no Linux?

0

Então, basicamente, estou tentando escrever um script de watchdog, que verifica os títulos das janelas em uma lista armazenada em um arquivo. Se a janela estiver em tela cheia, o script não deve fazer nada e seguir em frente. Se a janela NÃO estiver em tela cheia, o script deve chamar wmctrl -r '$title' -b toggle,fullscreen . Eu estive procurando nas páginas do manual do wmctrl, e não parece ser uma maneira infalível de detectar se uma janela é realmente tela cheia (por exemplo, eu poderia chamar wmctrl -l -G mas se eu checar a resolução da tela atual que não garante que o sinalizador de tela cheia foi definido, apenas que a janela é dimensionada para a resolução de tela cheia)

Existe uma maneira decente de realizar essa verificação condicional?

    
por Garrett Stewart 27.10.2014 / 04:06

1 resposta

1

Bem, eu fiz um pouco de escavação, parece que você pode pegar o estado da alternância de tela cheia usando xprop facilmente. Antes de executar wmctrl -r '$title' -b toggle,fullscreen , a saída de xprop -name '$title' tem a variável _NET_WM_STATE(ATOM) = undefined. Após a execução, essa variável é a seguinte: _NET_WM_STATE(ATOM) = _NET_WM_STATE_FULLSCREEN

Usando isso, posso detectar facilmente se a janela já está cheia ou não, então não preciso adivinhar.

    
por 27.10.2014 / 04:59