1. Move maximized window into the background when it's not focused.
2. Changed semantics so that maximizing a different window will
automatically restore the currently maximized window and maximize the
new one (previously this had to be done in two seperate steps).
This patch will swap the positions of the two slave windows and this will result in a more intuitive window order. When using focusDown beginning in the master pane we will move in the following graphical order 2->3->1->2->3 instead of 2->1->3->2->1. This is backwards from what is expected.
The small drawback is that increasing from 2 to 3 windows (and therefore also columns) will behave in a less intuitive way. The window in the right column will jump to the left of the screen.
I think that it is a good idea to make this change since I rely a lot on the window order but people using WindowNavigation may be of a different opinion.
An alternative is to add an option to select in what way to behave, but that could be overkill... I leave it up to discussion and devs to decide.
Context for why I've recorded the patch:
aavogt | portnov: did you get the message about your XMonad.Layout.CenteredMaster licence being not compatible with the licence of contrib?
portnov | aavogt: yep. Could you change that yourself? I allow this to be distributed as bsd3. Making so small patch and sending it will get to much time :)
portnov | *so
aavogt | I can change it, its more about whether you would allow the change to be made
aavogt | but I guess this clears it up
portnov | i allow.
This module defines layot named Column. It places all windows in one
column. Windows heights are calculated from equation: H1/H2 = H2/H3 = ... = q,
where `q' is given (thus, windows heights forms a geometric progression). With
Shrink/Expand messages one can change the `q' value.
I'd better do it in xmonad.hs, but I can't decide what to expose from
Tabbed.hs to make it happed. Suggestions on how to make mouse click
handling hook a part of the Tabbed creation interface are very welcome
- my attempts turned out to be ugly in extreme.
In order to enable user to write custom `decorationMouseFocusHook' and
`decorationMouseDragHook' hooks we need to provide him with means to
lookup original window by its decoration.
Module Decoration has internal function `lookFor' for exactly the same
purpose. I exported it under a slightly different name and without
exposing internals of DecorationState.
Provides layout modifier AutoMaster. It separates screen in two parts -
master and slave. Size of slave area automatically changes depending on
number of slave windows.
The order previously was not as documented, which prevented resizing specific
windows.
The Mosaic constructor is hidden in favour of mosaic :: Rational -> [Rational] -> Mosaic a
Expand and Shrink messages are added, requiring another argument.
Remove useless demonstration of SlopeMod message since resizing the focused
window is better.