Como configurar posicionamento e movimento de janelas no Lubuntu (Openbox) com atalhos de teclado
Publicado por Ta_PegandoFogo em 19/02/2025
[ Hits: 3.122 ]
#!/bin/bash
# Define a altura da borda superior e inferior (em pixels)
border_top_height=0 # Ajuste conforme necessário
border_bottom_height=0 # Ajuste conforme necessário
# Obtém as dimensões da tela
screen_width=$(xdpyinfo | awk '/dimensions:/ {print $2}' | cut -d'x' -f1)
screen_height=$(xdpyinfo | awk '/dimensions:/ {print $2}' | cut -d'x' -f2)
# Remove maximizações verticais e horizontais
wmctrl -r :ACTIVE: -b remove,maximized_vert,maximized_horz
# Calcula novas dimensões com base na direção
case "$1" in
up)
width=$screen_width
height=$((screen_height / 2 - border_top_height))
x=0
y=0
;;
down)
width=$screen_width
height=$((screen_height / 2 - border_bottom_height))
x=0
y=$((screen_height / 2))
;;
left)
width=$((screen_width / 2))
height=$screen_height
x=0
y=0
;;
right)
width=$((screen_width / 2))
height=$screen_height
x=$((screen_width / 2))
y=0
;;
*)
echo "Usage: $0 {up|down|left|right}"
exit 1
;;
esac
# Move e redimensiona a [em]janela[/em] ativa
wmctrl -r :ACTIVE: -e 0,$x,$y,$width,$height
// fim do script
Funciona assim:
#!/bin/bash
# Define a porcentagem da largura e altura da tela para a janela
width_percent=60 # Largura da janela em porcentagem da largura da tela
height_percent=70 # Altura da janela em porcentagem da altura da tela
# Obtém o ID da janela ativa
win_id=$(xdotool getactivewindow)
# Obtém as dimensões da tela
screen_width=$(xwininfo -root | awk '/Width:/ {w=$2} END {print w}')
screen_height=$(xwininfo -root | awk '/Height:/ {h=$2} END {print h}')
# Calcula a largura e altura da janela com base nas porcentagens
window_width=$((screen_width * width_percent / 100))
window_height=$((screen_height * height_percent / 100))
# Calcula a posição para centralizar a janela
x_position=$(((screen_width - window_width) / 2))
y_position=$(((screen_height - window_height) / 2))
# Verifica o estado da janela ativa
state=$(xprop -id "$win_id" _NET_WM_STATE)
# Alterna o estado da janela ativa
if echo "$state" | grep -q "_NET_WM_STATE_MAXIMIZED_VERT" && echo "$state" | grep -q "_NET_WM_STATE_MAXIMIZED_HORZ"; then
# Se estiver maximizada, desmaximiza e centraliza
wmctrl -ir "$win_id" -b remove,maximized_vert,maximized_horz
wmctrl -ir "$win_id" -e 0,$x_position,$y_position,$window_width,$window_height
else
# Se não estiver maximizada, maximiza
wmctrl -ir "$win_id" -b add,maximized_vert,maximized_horz
fi
// fim do script
Funciona assim:
#!/bin/bash
# Define a altura da borda superior e inferior (em pixels)
border_top_height=0 # Ajuste conforme necessário
border_bottom_height=0 # Ajuste conforme necessário
# Obtém as dimensões da tela
screen_width=$(xdpyinfo | awk '/dimensions:/ {print $2}' | cut -d'x' -f1)
screen_height=$(xdpyinfo | awk '/dimensions:/ {print $2}' | cut -d'x' -f2)
# Remove maximizações verticais e horizontais
wmctrl -r :ACTIVE: -b remove,maximized_vert,maximized_horz
# Define a largura e altura para a janela ocupar toda a tela
width=$screen_width
height=$screen_height
x=0
y=0
# Move e redimensiona a janela ativa para ocupar toda a tela
wmctrl -r :ACTIVE: -e 0,$x,$y,$width,$height
// fim do script
Funciona assim:
Imagens e vídeos não são reproduzidos no navegador [Resolvido]
Wi-fi fica desconectando no Ubuntu 21.10 [Resolvido]
ArchLinux: Firefox fechando após atualização
Livro gratuito - Linux comandos básicos e avançados
Como configurar o aDesklets 0.6.1 no Slackware 12
Instalando PostgreSQL no Slackware Linux
A arquitetura OSI de segurança
Trabalhando Nativamente com Logs no Linux
Jogando Daikatana (Steam) com Patch 1.3 via Luxtorpeda no Linux
LazyDocker – Interface de Usuário em Tempo Real para o Docker
Apagar Todo o Histórico do Terminal
Linux Mint: Zram + Swapfile em Btrfs
Internet não funciona corretamente no Linux (3)
Pendrive do Ubuntu 24.04 travando ao tentar fazer a instalação dual bo... (4)
Instalar Dual Boot, Linux+Windows. (14)
queria saber de uma coisa sobre o steam e derivados (3)
tentei instalar o steam pelo terminal, agora ele não abre (3)









