re, all.

The EWMH spec does not provide a way to disable or "turn off" the
_NET_WM_FULLSCREEN_MONITORS hint. In other words, whatever 4 monitor indices
were last used for a fullscreen window will continue to be used ad
infinitum, and the only current recourse for an app that has set this hint
is to keep setting it every time it wants to fullscreen, even if it's only
on a single head.

I've done a bit of testing with 2 heads and the latest Compiz, KWin, and
Metacity window managers and it looks like it's possible to at least confuse
these WMs into not using previous monitor indices for
_NET_WM_FULLSCREEN_MONITORS by passing a -1 (0xFFFFFFFF) for the 4 monitor
indices. I think what this is really doing is providing an invalid monitor
index that doesn't (and can't possibly) exist in Xinerama, so it's ending up
being not used by the WMs.

I'd like to propose that an addition be made to the EWMH spec that makes
this the official route to asking the WM to disable the
_NET_WM_FULLSCREEN_MONITORS hint for a given window. It seems to follow the
spirit of both the existing _NET_WM_FULLSCREEN_MONITORS section as well as
_NET_WM_DESKTOP (via using 0xFFFFFFFF as an otherwise invalid and special
index).

I'd like to provide a patch to the spec to provide a way to completely turn
off and disable the _NET_WM_FULLSCREEN_MONITORS after it's been set. I will
provide a patch to the EWMH XML file (is wm-spec-1.4.xml the right one?),
but before I do that, I wanted to check with the group on my approach. Does
this approach (passing 0xFFFFFFFF as monitor indices in
the XClientMessageEvent that is sent to the root window) sound good to
everyone? Or would it be preferable to use a different approach?

The advantage I see to doing it this way would mean that what currently
works via sending an invalid monitor index would be made the official spec
standard and require only minor patches to the implementing WM's to document
this as opposed to using some other mechanism which would require more
intrusive rework.

Thanks in advance, all! =:)

-- 
-[ Jason 'vanRijn' Kasper    //  http://movingparts.net ]-
-[ KDE PIM Developer         //  http://www.kde.org  ]-
-[ bash fun -> :(){ :|:&};:  //  Numbers 6:22-26 ]-
_______________________________________________
wm-spec-list mailing list
wm-spec-list@gnome.org
http://mail.gnome.org/mailman/listinfo/wm-spec-list

Reply via email to