<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Wed, Feb 5, 2014 at 1:56 PM, Danny <span dir="ltr"><<a href="mailto:danny.smit.0@gmail.com" target="_blank" class="cremed">danny.smit.0@gmail.com</a>></span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div class=""><div class="h5">On Wed, Feb 5, 2014 at 3:25 PM, Mikael Magnusson <<a href="mailto:mikachu@gmail.com" class="cremed">mikachu@gmail.com</a>> wrote:<br>


> On 5 February 2014 10:42, Danny <<a href="mailto:danny.smit.0@gmail.com" class="cremed">danny.smit.0@gmail.com</a>> wrote:<br>
>> On Tue, Feb 4, 2014 at 5:59 PM, Dana Jansens <<a href="mailto:danakj@orodu.net" class="cremed">danakj@orodu.net</a>> wrote:<br>
>>> On Tue, Feb 4, 2014 at 6:42 AM, Danny <<a href="mailto:danny.smit.0@gmail.com" class="cremed">danny.smit.0@gmail.com</a>> wrote:<br>
>>>><br>
>>>><br>
>>>> Hello,<br>
>>>><br>
>>>> I'm using the default openbox (on gdm) on CentOS 6.5 and are working on an<br>
>>>> application (based on Qt 5.1.1) which tries to set one of its windows to the<br>
>>>> background. The application uses the Qt API to achieve this. This should<br>
>>>> result in the windows manager flag _NET_WM_STATE_BELOW to be applied to the<br>
>>>> window. It seems that openbox doesn't react on this window manager flag.<br>
>>>><br>
>>>> To come up with a simple test case, I tried the same with the Qt example<br>
>>>> "windowsflags". This results in the same behavior, the window doesn't seem<br>
>>>> to be kept below when the application asks for it.<br>
>>>><br>
>>>> Additionally testing shows that this also aplies to Openbox 1.5.2, which<br>
>>>> is manually compiled from the sources.<br>
>>>><br>
>>>> Furthermore, when using the openbox configure to set the specific window<br>
>>>> to the lowest layer, it does seem to work as expected, as long as the<br>
>>>> application itself doesn't ask to keep the window in the lowest layer.<br>
>>>><br>
>>>> Another weird side effect is that the application is able to keep one<br>
>>>> window on top. However this doesn't work anymore if the same application<br>
>>>> also asks to keep another window below.<br>
>>>><br>
>>>> Could this be a bug in openbox? Are there any suggestions how to proceed<br>
>>>> with this issue?<br>
>>><br>
>>><br>
>>> To change the state of a mapped window, a Client MUST send a _NET_WM_STATE<br>
>>> client message to the root window:<br>
>>><br>
>>>   window  = the respective client window<br>
>>>   message_type = _NET_WM_STATE<br>
>>>   format = 32<br>
>>>   data.l[0] = the action, as listed below<br>
>>>   data.l[1] = first property to alter<br>
>>>   data.l[2] = second property to alter<br>
>>>   data.l[3] = source indication<br>
>>><br>
>>>   other data.l[] elements = 0<br>
>>><br>
>>> via <a href="http://standards.freedesktop.org/wm-spec/1.3/ar01s05.html" target="_blank" class="cremed">http://standards.freedesktop.org/wm-spec/1.3/ar01s05.html</a><br>
>>><br>
>>><br>
>>><br>
>>> _______________________________________________<br>
>>> openbox mailing list<br>
>>> <a href="mailto:openbox@icculus.org" class="cremed">openbox@icculus.org</a><br>
>>> <a href="http://icculus.org/mailman/listinfo/openbox" target="_blank" class="cremed">http://icculus.org/mailman/listinfo/openbox</a><br>
>>><br>
>><br>
>><br>
>> I noticed the Qt library uses xcb_change_property() calls to update<br>
>> the windows properties, which seem fine to me and also are working<br>
>> properly under gnome2.<br>
>><br>
>> Is it correct to assume that if the obxprop command gives the<br>
>> following result on the window:<br>
>><br>
>> _NET_WM_STATE(ATOM) = _NET_WM_STATE_FULLSCREEN, _NET_WM_STATE_BELOW,<br>
>> _OB_WM_STATE_UNDECORATED<br>
>><br>
>> The messages are correctly applied and the window is expected to stay<br>
>> below the others?<br>
><br>
> There is not much ambiguity in "MUST send a _NET_WM_STATE client<br>
> message to the root window".<br>
><br>
> --<br>
> Mikael Magnusson<br>
> _______________________________________________<br>
> openbox mailing list<br>
> <a href="mailto:openbox@icculus.org" class="cremed">openbox@icculus.org</a><br>
> <a href="http://icculus.org/mailman/listinfo/openbox" target="_blank" class="cremed">http://icculus.org/mailman/listinfo/openbox</a><br>
<br>
</div></div>No offence, but that still doesn't give me a clue what is wrong. I'm<br>
no expert at this low level of display/window management, therefore<br>
I'm requesting your help. I'm not really sure what you're trying to<br>
tell by solely pointing at the standard.<br>
<br>
>From my perspective the issue seems to point at a bug of openbox, but<br>
since I'm no expert I cannot prove it and can't be sure. From your<br>
firm statements, I'm getting the impression that you don't agree. So<br>
it would be helpful if you could elaborate about why your so convinced<br>
and/or point me in a more concrete direction where to look further.<br>
<br>
If your trying to tell me with your statements that openbox is doing<br>
it right, then are you saying that gnome is doing it wrong?<br>
<br>
That also makes me wonder why openbox does not accept<br>
_NET_WM_STATE_BELOW, while it does accept _NET_WM_STATE_ABOVE.<br>
<br>
I concluded from the output of obxprop in my previous message that the<br>
_NET_WM_STATE client message was successfully delivered to the root<br>
window. Please tell if that is incorrect to assume?<br>
<br>
I'm just trying to find a possible bug, in order to make the<br>
opensource world a better place for everyone. Are you willing to help<br>
me to achieve that goal?<br></blockquote><div><br></div><div>Changing the property directly will have no effect on Openbox. Instead you should be sending a client message to change the property. </div><div><br></div><div>

Here's code that can send such a message: <a href="https://github.com/danakj/openbox/blob/master/obt/prop.c#L570" class="cremed">https://github.com/danakj/openbox/blob/master/obt/prop.c#L570</a></div><div><br></div><div>

The details for that message are in my first reply.</div><div><br></div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">


<br>
Kind Regards,<br>
Danny Smit<br>
<div class=""><div class="h5">_______________________________________________<br>
openbox mailing list<br>
<a href="mailto:openbox@icculus.org" class="cremed">openbox@icculus.org</a><br>
<a href="http://icculus.org/mailman/listinfo/openbox" target="_blank" class="cremed">http://icculus.org/mailman/listinfo/openbox</a><br>
</div></div></blockquote></div><br></div></div>