[Xmonad] idea for float layer and extensible layout

David Roundy droundy at darcs.net
Sat May 5 14:13:01 EDT 2007


I had an idea.  What if we implement the float layer via (an extended)
extensible layout scheme? It seems pretty straightforward to write a higher
order layout that partitions windows between two Layouts, in which case
with a little bit of care we ought to be able to just write a layout that
handles floating windows only, and then composit that together with any
other layout.

I doubt this would be the way to *start* implementing a floating layer, but
it seems like doing this as a refactor afterwards would both maintain the
cleanliness of the code, and ensure the extensible layout interface is
sufficiently powerful and flexible to handle just about any window-managing
interface.

One feature we'd obviously need would be the ability to specify the
stacking order of the windows independently of the focus--which would argue
in favor of jcreigh's idea that we ought to pass the focussed window to
doLayout.  But, of course, there's a whole lot more than that which would
need doing as well--most notably, the ability for the layout to draw window
decorations and respond to mouse events.  But these would also need doing
by a tabbed interface, which is of much more interest to me than a floating
layer.

This idea would also have the benefit of keeping xmonad small, since the
floating layer could (and would) be implemented outside of the core, as a
module imported into Config.hs.
-- 
David Roundy
http://www.darcs.net


More information about the Xmonad mailing list