Estou usando duas configurações de tela no trabalho e, embora geralmente ajude mais do que dói, tenho alguns problemas.
Um deles é o problema de rastrear o foco - às vezes eu erro ao digitar na tela errada (o foco está arrastando meu cursor, mas nem sempre é fácil perceber que o cursor está em outra tela quando você faz as coisas com pressa). Isso é muito chato quando, em vez de digitar, eu faço várias ações diferentes (atalhos de uma tecla no thunderbird).
Existe uma maneira de realçar melhor a tela ou janela ativa (por exemplo, usando borda facilmente visível - mesmo para janelas maximizadas)?
EDITAR:
Eu acho que uma boa solução seria algum tipo de animação curta quando a janela receber o foco.
Respostas:
Destaque a tela focada (ou ofuscante na mudança de foco, veja EDITAR mais abaixo)
Em uma configuração de monitor duplo lado a lado (esquerda-direita), o script abaixo definirá o brilho do monitor com a janela focada como "normal" (100%), enquanto o outro é esmaecido para 60%.
Se o foco mudar, o brilho seguirá o foco:
focalize (uma janela) na tela direita
focalize (uma janela) na tela esquerda
O script
Como usar
O script precisa
wmctrl
:Copie o script em um arquivo vazio, salve-o como
highlight_focus.py
Teste-execute pelo comando:
Com o segundo monitor conectado , teste se o script funciona conforme o esperado.
Se tudo funcionar bem, adicione-o aos aplicativos de inicialização: Dash> Startup Applications> Add the command:
Notas
O script é extremamente baixo em recursos. Para "economizar combustível", a configuração da tela; resoluções, tamanho do intervalo etc. é lido apenas uma vez, durante a inicialização do script (não incluído no loop). Isso implica que você precisará reiniciar o script se conectar / desconectar o segundo monitor.
Se você o adicionou aos aplicativos de inicialização, significa que você deve efetuar logout / logon após alterações na configuração do monitor.
Se você preferir outra porcentagem de brilho para a tela esmaecida, altere o valor na linha:
O valor pode estar entre
0,0
(tela preta) e1.0
(100%).Explicação
Na inicialização do script, ele determina:
Então, em um loop (uma vez por segundo), ele:
verifica a posição da janela ativa com os comandos:
wmctrl -lG
(para obter a lista de janelas e suas posições)xprop -root _NET_ACTIVE_WINDOW
(para obter o ID da janela mais à frente)Se a posição (x-) da janela for maior que a resolução x da tela esquerda, a janela aparentemente estará na tela direita, a menos que seja maior que o tamanho de abrangência das duas telas (estaria na área de trabalho em o certo). Portanto:
determina se a janela está na tela direita (onde
limit
x-res da tela esquerda,pos
é a posição x da janela espan
os x-res combinados das duas telas).Se houver uma alteração na posição da janela mais à frente (na tela esquerda ou tela direita), o script definirá o brilho das duas telas com o
xrandr
comando:EDITAR
Escureça a tela focalizada em vez de uma tela "desfocada" permanente esmaecida
Conforme solicitado em um comentário e no bate-papo, abaixo de uma versão do script que fornece um breve flash na tela recém-focada:
fonte
limit < pos < span
paralimit <= pos < span
fazê-lo funcionar. Enfim, isso é muito bom. No entanto, não tenho certeza se quero fazê-lo funcionar dessa maneira (escurecendo a outra tela). Vou tentar modificá-lo para criar um único pulso brilhante quando a tela ativa mudar.Eu também encontrei outra solução, que é um pouco diferente do que eu queria em primeiro lugar, mas também funciona bem.
compizconfig-settings-manager compiz-plugins
Effects
seção, habilite oAnimations
plug-inFocus Animation
editar e selecionar a animação desejada.Apenas efeito de onda funcionou ... Então, se você não gostar, terá um rosto tão triste quanto o meu.
fonte