As you can see there, I have tested in GNOME 2.16.1 and Java behaves correctly in this case, _NET_WM_STATE is set to _NET_WM_STATE_FULLSCREEN whereas even KDE 3.5.4 doesn't. It seems to be a really old KDE bug as Anthony Petrov suggested. You can find my tests with xprop and my testcase of FSEM here at the bottom of this page: https://bugs.kde.org/show_bug.cgi?id=276159
I will test on a more recent version of KDE & GNOME in about half a day. > Message du 28/06/11 22:13 > De : "Anthony Petrov" > A : "Phil Race" , goues...@orange.fr > Copie à : awt-dev@openjdk.java.net > Objet : Re: KDE Task bar is always on top of fullscreen Java applications > > Phil: Ah, right! Haven't used to the new rules yet. Thanks for reminding > us about that. > > Julien: I have a few questions about your patch: > > 1. The xprop output that you've attached to the KDE bug report [1] > indicates that the full screen window is maximized (i.e. using the > emulated full screen mode rather than the exclusive one). In this case, > the behavior is correct. But I assume you did try to do the same with > the exclusive FS mode enabled, didn't you? Could you please provide an > xprop output in that case, too? > > 2. The EWMH specification [2] states that "A Client wishing to change > the state of a window MUST send a _NET_WM_STATE client message to the > root window". However, your proposed patch calls XChangeProperty() which > changes the property manually, and therefore violates the EWMH spec. I > think that a subsequent XSendEvent() to the root window should be enough > for our purposes. > > 3. The comments at the KDE bug report, as well as the EWMH spec (see the > "Stacking order" section) suggest that a window with the > _NET_WM_STATE_FULLSCREEN state should already be above any other windows > (including the _NET_WM_STATE_ABOVE windows). Also, the specification > states that the latter state should not be used by applications > directly. Note that the function X11GD_SetFullscreenMode() which you're > changing with your patch already sets the _NET_WM_STATE_FULLSCREEN state > to the full screen window, and, according to the EWMH specification, > that alone should work fine for full screen windows. So doesn't this > then seem to be a bug in KDE4 actually? > > [1] https://bugs.kde.org/show_bug.cgi?id=276159 > > [2] http://standards.freedesktop.org/wm-spec/wm-spec-latest.html > > -- > best regards, > Anthony > > On 6/28/2011 8:26 PM, Phil Race wrote: > > Anthony, > > > > That looks like a "small patch" so by the recent relaxation of the > > rules an OCA isn't needed. > > > > -phil. > > > > On 6/28/2011 5:02 AM, Anthony Petrov wrote: > >> Hi Julien, > >> > >> For your contribution to be acceptable, you have to sign an OCA. > >> Please refer to this page for details on how to become an OpenJDK > >> contributor: > >> > >> http://openjdk.java.net/contribute/ > >> > >> -- > >> best regards, > >> Anthony > >> > >> On 6/27/2011 4:03 PM, goues...@orange.fr wrote: > >>> Hi! > >>> > >>> I think I have found a fix for this bug. On GNOME and on KDE the > >>> atoms remain unchanged according to xprops but the X client message > >>> is sent, that is why I call XChangeProperty. On the other hand, only > >>> a window on top of the stack can become fullscreen, that is why I use > >>> _NET_WM_STATE_ABOVE. I fear that building OpenJDK requires a lot of > >>> time. Could someone with a ready environment make a build for me with > >>> this fix? My "patch" is in the bug report here: > >>> http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=7057287 > >>> > >>> Best regards > >>> > >>> Julien Gouesse > >>> > >>>> Message du 23/06/11 14:50 > >>>> De : "Anthony Petrov" A : goues...@orange.fr > >>>> Copie à : Objet : Re: KDE Task bar is always on top of fullscreen > >>>> Java applications > >>>> > >>>> Hi, > >>>> > >>>> On 06/22/2011 02:28 PM, goues...@orange.fr wrote: > >>>>> Yes, that's it. I'm sad because I'm using JOGL AWT canvas called > >>>>> GLCanvas and this bug impacts my first person shooter. If I knew > >>>>> better the source code of AWT, I would try to write a patch. I assume > >>>>> there is a way of detecting the window manager to apply this fix only > >>>>> in this case, isn't it? > >>>> This window state is a part of EWMH specification, so there's no > >>>> need to set it for specific WMs only. > >>>> > >>>> > >>>>> Does AWT currently rely on xrandr or VidMode on Linux? Best regards. > >>>> I think this question belongs to the 2d-dev@openjdk mailing list. > >>>> I'm not a Java2D expert. Please ask 2D folks about that. > >>>> > >>>> PS. Please remember to use Reply All rather than just Reply so that > >>>> your message hits the mailing list. > >>>> > >>>> -- > >>>> best regards, > >>>> Anthony > >>>> > >>>>> > >>>>>> Message du 22/06/11 12:11 > >>>>>> De : "Anthony Petrov" A : goues...@orange.fr > >>>>>> Copie à : awt-dev@openjdk.java.net > >>>>>> Objet : Re: KDE Task bar is always on top of fullscreen Java > >>>>>> applications > >>>>>> > >>>>>> Hello, > >>>>>> > >>>>>> On 6/22/2011 1:14 PM, goues...@orange.fr wrote: > >>>>>>> The exclusive fullscreen mode is broken in KDE for Java > >>>>>>> applications as I explained here: > >>>>>>> https://bugs.kde.org/show_bug.cgi?id=276159 > >>>>>>> > >>>>>>> http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=7057287 > >>>>>>> (not yet visible) > >>>>>>> > >>>>>>> After some investigations, the problem comes from Java which does > >>>>>>> not > >>>>>>> tag the window as fullscreen. Do you know how to fix this bug? > >>>>>> To tag full screen windows with the _NET_WM_STATE_FULLSCREEN > >>>>>> state? That's easy. :) > >>>>>> > >>>>>> Thanks for filing the bug report. AWT team will take care of this > >>>>>> issue. > >>>>>> > >>>>>> -- > >>>>>> best regards, > >>>>>> Anthony > >>>>>> > > >