Permitir que as janelas se sobreponham ao painel na parte superior ou inferior

1

Muitas vezes, quero ter apenas a parte superior ou inferior de uma janela na tela. Eu não quero que um programa monitore a tela inteira. Por exemplo, preciso me referir a um cálculo exibido na parte inferior de uma janela grande. Para se referir a esse cálculo e, em seguida, escrever sobre isso em outra janela, quero reposicionar o cálculo para que apenas a parte inferior da janela de cálculo esteja sendo exibida. (Eu não preciso ver sua barra de título ou menus suspensos, ou mesmo os primeiros 2/3 do painel de cálculo).

No momento, até onde eu sei, todos os "desktops" para o Linux impõem uma restrição que torna impossível reposicionar uma janela de modo que fique metade da tela na parte superior ou inferior. / p>

Nos dias dourados dos gerenciadores de janelas (o WindowMaker era incrível!), isso não foi um problema. Não havia "limites" forçados protegendo painéis de serem cobertos, tanto quanto me lembro. O problema começou com o Gnome e o KDE, se bem me lembro. Quando o Compiz surgiu, ele reforçou uma política de que uma janela não poderia ser reposicionada para que sua barra de título ficasse fora da tela, mas o ccsm tinha uma opção para permitir que um usuário ansioso mudasse isso (chamado "constranger-Y", como eu lembro). Quando comecei a usar sistemas baseados em OpenBox e XFWM4, perdi essa habilidade.

Pareceu-me que os autores de painéis estavam protegendo a primazia de seu produto de forma muito agressiva. Eu simplesmente não preciso ver os painéis Gnome ou XFCE4 quando estou ocupado escrevendo algo.

Editar: Fiz uma captura de tela enquanto digitava a resposta para comentar abaixo. Veja aqui:

    
por pauljohn32 27.08.2016 / 20:05

1 resposta

2

Algum tempo atrás, encontrei uma solução que desejo compartilhar. Isto usa wmctrl , um programa disponível para Debian / Ubuntu que pode interagir com qualquer X Window Manager compatível com EWMH / NetWM. Eu tenho sucesso com isso no OpenBox, XFWM4 e qualquer outro gerenciador de janelas compatível com os padrões NetWM.

Aqui está um script bash de 2 linhas que eu chamo de '' togglePanelBelow.sh

#!/bin/bash
wmctrl -l | grep panel |  awk '{print "wmctrl -v -i -r "  " -b remove,above"}' | bash
wmctrl -l | grep panel |  awk '{print "wmctrl -v -i -r "  " -b add,below"}' | bash

Isso permite que janelas comuns sejam reposicionadas para que elas se sobreponham ao painel.

Isso usa wmctl para listar as janelas existentes, os filtros para aqueles com "painel" no nome e, em seguida, usa wmctrl novamente para informar esses painéis para que fiquem abaixo da pilha de janelas. Há duas etapas porque, em algum momento de 2015, o script parou de funcionar porque as propriedades não puderam ser alteradas. Eles devem ser removidos e redefinidos.

Se você decidir ver o painel sobre as janelas comuns, como era antes, execute togglePanelAbove.sh .

#!/bin/bash
wmctrl -l | grep panel |  awk '{print "wmctrl -v -i -r "  " -b remove,below"}' | bash
wmctrl -l | grep panel |  awk '{print "wmctrl -v -i -r "  " -b add,above"}' | bash

Se você posicionar uma janela pela metade na tela e depois executar o comando alternarPanelAbove, o painel se sobrepõe à janela.

Eu configurei teclas de atalho para isso e isso nunca causou nenhum problema.

Isso não é realmente uma pergunta, apenas uma postagem "olhe para essa coisa bacana que encontrei". Talvez uma pergunta seja: isso funciona no gerenciador de janelas escolhido? Você pode confirmar que está tudo bem no OpenBox e no XFWM4, e os outros? Eu não tive entusiasmo para testá-lo no Iluminismo, por exemplo.

    
por pauljohn32 27.08.2016 / 20:05