Cycling through windows

From Fluxbox-wiki

Jump to: navigation, search


Problem

If you have a big display, you can have many little windows tiled, but if you want to magnify one of them a little bit, you have to grab your mouse and move it around and change the size to your desired geometry. You can maximize it with a simple key press, but sometimes a 1680x1050-xterm is way too big ;) Wasn't it nice to have the possibility of changing the windows and resizing it, move it to the center and back again when you finished your work with a simple key press? So you have all little windows in your view and the one you are working on is centered and bigger.

winresize-script

A possible solution is this script. You can work with it, but the y-position is set a little big wrong (I'm working on it). If you want to see what it does, take a look at this screenrecording.

You need the following programs working:

 wmctrl
 xprop

Get the script:

 $ wget http://www.philipp-bender.de/winresize  
 $ mv winresize ~/bin/winresize
 $ chmod +x ~/bin/winresize
 $ wget http://www.philipp-bender.de/wincycle  
 $ mv winresize ~/bin/wincycle
 $ chmod +x ~/bin/wincycle

Open a terminal and test it:

 $ winresize help
 $ winresize restart
 $ winresize front
 $ winresize back

To cycle through your windows you need to edit some files:

 $ gedit ~/.fluxbox/init

change one line:

 session.screen0.allowRemoteActions:	true

... bind your keys:

 $ gedit ~/.fluxbox/keys

add the following:

 Mod1 r :execCommand winresize restart
 Mod1 b :execCommand winresize back
 Mod1 c :execCommand wincycle


Ok, that should be enough: To start working, press Mod1+r, open some little windows, tile them and change them again and again with Mod1+c. If you want them all tiled as it was when you started working, press Mod1+b. If the geometry doesn't fit to your screen, just edit it. Open the file with

 $ gedit ~/bin/winresize

and change the values in this line:

 frontgeom = (0,260,180,1150,760)

The values are:

 frontgeom = (0,<x-position>,<y-position>,<width>,<height>)
Personal tools
Google Ads