On Tue, Jan 11, 2011 at 10:14:39PM +0100, Dominik Vogt wrote:
> On Wed, Jan 12, 2011 at 04:20:20AM +0000, Thomas Adam wrote:
> > On Wed, Jan 12, 2011 at 01:15:24PM +1030, Graham Gower wrote:
> > > I noticed that if a maximised application is fullscreened (e.g. use F11
> > > in firefox), fvwm forgets that it was maximised when fullscreen mode is 
> > > exited.
> > > 
> > > The below patch fixes this for me.
> > 
> > Thanks -- but there's other states as well which will need managing, and
> > having WAS_FOO_* macros is ugly.
> > 
> > I'll commit something more robust than this in a few days, but this patch
> > needs more work.  Thanks for the bug report though.
> 
> Also, it's not so simple to change.  Windows can have any geometry
> while being maximized.  It does not suffice to simply call
> "maximize" when leaving fullscreen state, and that geometry would
> have to be restored.

Exactly.  And in the case of EWMH_Fullscreen anyway, we're using
ResizeMoveMaximize, but in order to do that, explicitly turn off
iconification and window shading of they're set, which means the geometries
of those are never reset.

Note that it's a red-herring to call any of this work in effort of
fullscreen.  That's just a facet of the logic in EWMH_fullscreen() which IMO
just seems slightly backwards to me anyway -- where the g.normal hints are
always reset because it has to undo a bunch if windowing state
(iconification, shading, etc) so that when the call to ResizeMoveMaximize is
made, the window is still visible.

Ugh.  :)

I've a patch to geometry.c which I'll clean up and submit here for review
before committing it, I think.

-- Thomas Adam

-- 
"It was the cruelest game I've ever played and it's played inside my head."
-- "Hush The Warmth", Gorky's Zygotic Mynci.

Reply via email to