FvwmRearrange and EwmhBaseStruts


I would like to set up a working area using EWMHBaseStruts and then use FvwmRearrange to tile windows within that working area.

So say I set:

EwmhBaseStruts 40 0 35 0

start up some windows, and do:

ModuleSynchronous FvwmRearrange -tile  -u -h -m 0 0 100 100 

The boundaries at the top and left are respected, but the windows span outside of the screen at the right and on the bottom (i.e. they spill into other pages by the amount specified in the EwmhBaseStruts).

Based on this thread:

fvwm “always worked that way. It’s doing the right thing here”.

Hence my question is: should I just manually set the maximum area that the windows can span (by changing the 100 to a smaller number in the code above)? Or is there a way to force RvwmRearrange to rearrange windows only within the specified work space?


Use the CVS version of FVWM. I fixed FvwmRearrange to work with the newly-changed Move command (which honours the ewmhwa by default) – so see if that helps you.

– Thomas Adam

I have tried the cvs version… (but from the 2.6 branch):

fvwm 2.6.4 (from cvs) compiled on Jan 8 2012 at 17:23:15
with support for: ReadLine, RPlay, Stroke, XPM, PNG, SVG, Shape, XShm, SM, Xinerama, XRender, XCursor, XFT, NLS

and observe the same behaviour.

I’ll play with 2.7 to see if perhaps you meant that.


Right – and when tiling windows it respects the working area as set by EwmhBaseStruts – I know this because I wrote the supporting code, and have just tested it. It’s even mentioned in the man page for FvwmRearrange.

So what’s the problem? If it’s windows tiling differently to how you want them if they already span on to other pages, then mention that, and don’t tie it in to EwmhBaseStruts, because that’s both incorrect and confusing.

No, I did not mean this, otherwise I’d have told you to use 2.7, but this is no longer supported and hasn’t been for a while.

– Thomas Adam

As far as I understand “respecting the working area”, FvwmRearrange does not do it. That is if I set

EwmhBaseStruts 40 0 35 0

and run

ModuleSynchronous FvwmRearrange -tile  -u -h -m 0 0 100 100

I would expect my windows to be tiled within the working area (i.e. to be contained within it, and not spill out onto other pages), but in practice (for me), the windows do end up outside of what’s defined by EwmhBaseStruts.

I really don’t know if you’re saying you just tested it and you observe the same behaviour as I do, or in your case the windows never go outside of what’s defined by EwmhBaseStruts?

OK – I can reproduce this, albeit differently.

Will put a fix in CVS for this later on. Thanks.

– Thomas Adam

I have tried the cvs version…

Well done! Fantastic.

What do you expect, a medal?

– Thomas Adam