
On Wed, 2 May 2007 08:27:39 -0700
David Roundy
Hi all,
I was wondering if there were any plans to add support for extensible layouts to xmonad? I haven't really gotten any comments on my patch to do so, and have no idea if the approach I sketched out is considered unacceptable, foolish, or what not. Or perhaps there's just no real interest in extensible layouts by the other developers?
I'm interested, but slow ;). Some comments about your patch: - I'd rather stay away from the parametricity on message type. Matching via Show is a bit ugly. I think a better representation is:
data Message = Shrink | Expand | Other Dynamic
Layouts can then match against the core constructors, then fromDyn and match against special messages. - Should there be more messages? Specifically, messages like: WindowAdd, WindowRemove, InitializeLayout, UnitializeLayout. Otherwise, layouts that need to keep per-window state will need to compare their state against the window list on each 'refresh' call. - Can layouts do IO (or X ())? I've seen a handful of requests for ion style tabbing -- this requires IO to draw the tab bar. Additionally, the layout would need to listen to arbitrary X events to redraw the tab bar on ExposeNotify events.
I'd rather not bother resolving the conflicts I've got with the recent burst of modifications if there's not much interest in the patch, particularly as my wrist has decided I shouldn't be using my computer very much--and I need to use one for work.
I'm sorry about the lack of response until now. I put off looking closely at your patches, and "in a couple of hours" has turned into "a couple of weeks". Cheers, Spencer Janssen