Use Devilspie2 para definir o tipo de janela como "Utilitário" para aplicativos seletivos. Este tipo de janela não será afetado pela "Opacidade das janelas inativas" no ambiente Xfce.
Configuração preliminar
Instale Devilspie2 a partir do repositório (disponível em Debian e repositórios do Ubuntu), crie um novo arquivo de configuração em $HOME/.config/devilspie2
com o seguinte conteúdo.
debug_print("Window Name: " .. get_window_name());
debug_print("Application name: " .. get_application_name());
if (get_application_name()=="xfce4-dict") then
set_window_type "_NET_WM_WINDOW_TYPE_UTILITY";
end
Salve o arquivo como opaque.lua
. O nome do arquivo pode ser qualquer coisa, mas ele deve ter a extensão de arquivo .lua
para funcionar com o Devilspie2.
Testes preliminares
Execute Devilspie2 no modo de depuração e você verá algo como abaixo.
$ devilspie2 -d
Running devilspie2 in debug mode.
Using scripts from folder: /home/USERNAME/.config/devilspie2
------------
List of LUA files handling "window_open" events in folder:
/home/USERNAME/.config/devilspie2/opaque.lua
List of LUA files handling "window_close" events in folder:
------------
Window Name: Desktop
Application name: xfdesktop
Window Name: xfce4-panel
Application name: xfce4-panel
Window Name: Application Finder
Application name: xfrun4
Window Name: Dictionary
Application name: xfce4-dict
As seguintes capturas de tela estão mostrando a janela inativa do Dicionário, antes e depois da execução do Devilspie2. Observe que a opacidade muda para o Dictionary (inferior), mas o Xfce Terminal permaneceu menos opaco (esquerda) enquanto as duas janelas estão inativas.
AjanelainativadoDicionáriopermaneceutotalmenteopacaporqueotipodejanelafoialteradopara"Utilitário" por Devilspie2, em relação ao arquivo de configuração.
Modificando a configuração
O arquivo de configuração criado contém as duas primeiras linhas que começam com debug_print
para mostrar as mensagens de depuração de "Window Name: ... Application name: ...". Essas linhas permitem que o Devilspie2 mostre os respectivos nomes para os aplicativos em execução no momento e, em seguida, execute os aplicativos.
Com base nas mensagens de depuração, o usuário deve seguir estas etapas:
-
Identifique o aplicativo de escolha, que precisa ser totalmente opaco quando inativo. Procure a linha contendo seu
Application name:
e copie o valor. -
Abra o mesmo arquivo de configuração em
/home/USERNAME/.config/devilspie2/opaque.lua
usando um editor de texto e, em seguida, substituaxfce4-dict
pelo aplicativo escolhido. -
Salve o arquivo.
-
Saia e corra novamente no Devilspie2.
Observe que USERNAME se refere ao nome de usuário atual.
A configuração modificada será agora efetiva. Se o aplicativo de escolha já estiver em execução, alterne a janela para frente e para trás para ver as alterações efetivas quando a janela ficar inativa novamente.
Torne persistente
O Devilspie2 deve estar em execução em segundo plano para que esta solução seja eficaz em todas as sessões. Para tornar isso persistente, adicione devilspie2
na guia "Aplicativos Autostart" em "Sessão e inicialização".
Que tipo de janela
Inicialmente, encontrei esta solução enquanto brincava com o Devilspie2 por tentativas e erros. Mais tarde, tentei executar o GIMP 2.8 e percebi que a janela principal ficou menos opaca quando inativa, mas as outras duas janelas flutuantes permaneceram totalmente opacas.
Em seguida, confirmei o tipo de janela executando xwininfo
e, em seguida, clique em uma das janelas flutuantes para imprimir as dicas do gerenciador de janelas.
$ xwininfo -wm
xwininfo: Please select the window about which you
would like information by clicking the
mouse in that window.
xwininfo: Window id: 0x2a00686 "Layers - Brushes"
Window manager hints:
Client accepts input or input focus: Yes
Initial state is Normal State
Displayed on desktop 1
Window type:
Utility
Window state:
Skip Pager
Skip Taskbar
Process id: 5262 on host XXXXX
Frame extents: 1, 1, 22, 4
E bingo, o tipo de janela era de fato "Utilitário"!
Uma questão trivial
O tipo de janela "Utilitário" tem um comportamento diferente, ou seja, a janela do aplicativo não aparecerá mais na barra de tarefas. O usuário pode continuar navegando pelas teclas Alt + Tab em vez da barra de tarefas.
Esse comportamento é normal para o tipo de janela "Utilitário", que pode ser observado da mesma forma para as janelas flutuantes a.k.a. nas docas do GIMP.
Se o usuário achar que esse comportamento não é desejável, a alteração do tipo de janela poderá ser uma solução com desvantagem. Por outro lado, o comportamento é um problema trivial ao mesmo tempo em que é capaz de manter janelas seletivas opacas quando inativas.
Comentários
Testado trabalhando no Xubuntu 14.04 (Xfce 4.10), usando o Devilspie2 v0.31.