Re: use of _NET_WM_STATE_FULLSCREEN
- From: MK <halfcountplus intergate com>
- To: metacity-devel-list gnome org
- Subject: Re: use of _NET_WM_STATE_FULLSCREEN
- Date: Mon, 01 Mar 2010 17:19:39 -0000
On Wed, 3 Feb 2010 11:44:11 -0500
MK <halfcountplus intergate com> wrote:
> On Wed, 03 Feb 2010 23:53:57 +1100
> Russell Shaw <rjshaw netspace net au> wrote:
> > MK wrote:
> > > I'm developing an openGL application and am having some trouble
> > > setting the window fullscreen. Attached is the code I am using;
> > > the most relevent function is fullscreenEWMH(), which is about 45
> > > lines.
> > Use:
> > long mask = 0;
> > ...
> > event.xclient.data.l[3] = 1;
>
> That will work on fwvm, but not on metacity. Using 0 for the mask
> will fail no matter what, and use of any value but 0 for data.l[3]
> seems to further restrict the masks which will work, it seems. In
> any case, none of them work from within the application itself (altho
> they do in fvwm), only when called from an external process. Have you
> actually used this yourself?
Yeah. The proper mask is actually "SubstructureNotify|
SubstructureRedirect":
http://standards.freedesktop.org/wm-spec/wm-spec-latest.html#id2505751
I believe I made this observation about external vs. internal (and
fvwm) here too, so thanks for confirming that. Here's a quote from
someone at wm-spec (who are responsible for ewmh) about it:
"Quite possibly because the function opens a separate X connection for
whatever reason, so maybe the event about changing the window state is
in fact sent before the main X connection is flushed and the event
creating the window is sent."
Not sure what I think of that since 1) it remains true after the window
is created as well (eg, with a repeatable fullscreen/unfullscreen
option), 2) I think would also be true in fwvm, but isn't.
> The "Bad Request" reply may be an Xlib issue, since it also occurs
> under fwvm whether the request works or not.
That was my mistake, because of an inconsistency in xlib policy:
XSendEvent returns 1 unless the request *fails* (whereas xlib
functions generally return "Success" (0) or a positive integer for
errors).
Anyway, kind of surprised no one here has knowledge of any tried and
true method to fullscreen a window in metacity.
--
MK <halfcountplus intergate com>
[
Date Prev][Date Next] [
Thread Prev][Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]