Affiancare finestre

Se si necessita di affiancare due finestre presenti nello stesso workspace, รจ possibile farlo con questo script:

#!/bin/bash

width=$(xwininfo -root | awk '$1=="Width:" {print $2}')
(( xwidth=$width/2 ))
height=$(xwininfo -root | awk '$1=="Height:" {print $2}')
(( xheight=$height-126 ))

windows=$(wmctrl -l | grep " "$(wmctrl -d | awk '$2=="*" {print $1}') | awk '{print $1}' | tr '\n' ' ')
win1=$(echo $windows | awk '{print$1}')
win2=$(echo $windows | awk '{print$2}')

if [ $(wmctrl -lG | grep $win1 | awk '{print $5}') -eq $width ]
then
        wmctrl -ir $win1 -b remove,maximized_vert,maximized_horz
        wmctrl -ir $win1 -e 0,0,0,$xwidth,$xheight
        wmctrl -ir $win2 -b remove,maximized_vert,maximized_horz
        wmctrl -ir $win2 -e 0,$xwidth,0,$xwidth,$xheight
else
        wmctrl -ir $win1 -b add,maximized_vert,maximized_horz
        wmctrl -ir $win1 -o 0,0
        wmctrl -ir $win2 -b add,maximized_vert,maximized_horz
        wmctrl -ir $win2 -o 0,0
fi

Al primo avvio affianca le prime due finestre, al secondo avvio ne ripristina il maximize.

Comments are closed.