Como configurar posicionamento e movimento de janelas no Lubuntu (Openbox) com atalhos de teclado
Publicado por Ta_PegandoFogo em 19/02/2025
[ Hits: 3.025 ]
#!/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:
Wi-fi fica desconectando no Ubuntu 21.10 [Resolvido]
Imagens e vídeos não são reproduzidos no navegador [Resolvido]
Packet Tracer 5.3.3 - Instalação no Ubuntu 12.04
Teclado Acer Aspire One com acentos e cedilha
Compartilhamento no Samba com permissão de grupo
Livro digital sobre GNU/Linux Debian Etch
Como atualizar sua versão estável do Debian
Cirurgia para acelerar o openSUSE em HD externo via USB
Void Server como Domain Control
Script de montagem de chroot automatica
Atualizar Linux Mint 22.2 para 22.3 beta
Jogar games da Battle.net no Linux com Faugus Launcher
Como fazer a Instalação de aplicativos para acesso remoto ao Linux
Por que passar nas disciplinas da faculdade é ruim e ser reprovado é b... (7)
De volta para o futuro - ou melhor, para o presente (parte 2) (0)









