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

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

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

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

Nos dias dourados dos gerenciadores de janelas (o WindowMaker era incrível!), isso não era um problema. Não havia "limites" impostos que protegessem os painéis de serem cobertos, tanto quanto me lembro. O problema começou com o Gnome e o KDE, pelo que me lembro. Quando o Compiz apareceu, ele impôs uma política de que uma janela não pudesse 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 alterasse isso (chamado "restringir-Y", pelo que me lembro). Quando comecei a usar sistemas baseados em OpenBox e XFWM4, senti falta dessa capacidade.

Pareceu-me que os autores dos painéis protegiam a primazia do seu produto de forma demasiado agressiva. Só 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: Captura de tela mostrando a parte inferior do Firefox

Responder1

Há algum tempo, encontrei uma solução que quero compartilhar. Isso usa o wmctrl, um programa disponível para Debian/Ubuntu que pode interagir com qualquer X Window Manager compatível com EWMH/NetWM. Tenho sucesso com isso no OpenBox, XFWM4 e em qualquer outro gerenciador de janelas compatível com os padrões NetWM.

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

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

Isso permite que as janelas comuns sejam reposicionadas de forma que se sobreponham ao painel.

Isso é usado wmctlpara listar as janelas existentes, filtrar aquelas com "painel" no nome e, em seguida, usar wmctrlnovamente para informar esses painéis para ficarem abaixo da pilha de janelas. São 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 reconfigurados.

Se você decidir ver o painel no topo das janelas comuns, como era antes, execute togglePanelAbove.sh.

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

Se você posicionar uma janela pela metade da tela e executar togglePanelAbove, o painel se sobreporá à janela.

Configurei teclas de atalho para isso e isso nunca causou problemas.

Isso não é realmente uma pergunta, apenas uma postagem do tipo "olha só essa coisa legal que encontrei". Talvez uma pergunta fosse: isso funciona no gerenciador de janelas escolhido? Você pode confirmar que está tudo bem no OpenBox e no XFWM4, e nos outros? Não tive entusiasmo para testá-lo no Iluminismo, por exemplo.

informação relacionada