I'm writing here instead of asking over IRC because it's a bit long and I don't want to generate confusion (I'm quite too good at that...;) There are 2 patches I don't understand. This one breaks Tabbed.addTabs: Tue Feb 5 21:23:43 CET 2008 David Roundy <droundy@darcs.net> * make tabbed work nicely with LayoutCombinators and WindowNavigation. The problem is that WindowNavigation assumes all windows are navigable, and it was getting confused by decorations. With a bit of work, we can decorate windows *after* combining layouts just fine. since Tabbed now assumes that the windows to be decorated are only those with the same rectangle: wrs' = filter ((==r) . snd) wrs Which is fine only with Simplest. If you use it with some other layout (which does not give the same rectangle to all windows) then this will always hold: if length wrs' <= 1 then Nothing It also assumes the decoration to have the same y coordinate of the window to be decorated - the window must be shrunk. That is to say, if we were to remove the first constraint, we would end up with a SimpleDecoration layout modifier. :) But, as far as I understand, this is needed for WindowNavigation (I do not understand well its code, and I didn't have time to study it). Which brings me to this patch: Tue Feb 5 21:35:56 CET 2008 David Roundy <droundy@darcs.net> * make WindowNavigation ignore decorations. where you check the stack to see if a window is a decoration. There is also another way to check if a window is a decoration, by checking its attributes (isDecoration :: Window -> X Bool does this). I'm writing because I wonder if we can remove that constrain from Tabbed and solve the WindowNavigation problem in another way. If yes, I can do it (I'll study WindowNavigation). Please David, can you give me some directions? Thanks, Andrea ps: this is the reason why I rewrote the instance in DecorationMadness, with a note that those layouts could be incompatible with WindowNavigation: now that the mouse UI is almost finished, I'd like to get this (hopefully last big) issue solved too.