multiwindow support for _NET_WM_STATE_SKIP_TASKBAR

Jon TURNEY jon.turney@dronecode.org.uk
Tue Jan 6 16:28:00 GMT 2009


Jon TURNEY wrote:
> Yaakov (Cygwin/X) wrote:
>> Yaakov (Cygwin/X) wrote:
>>> I have noticed that normal windows don't appear in the taskbar until
>>> they are refocused upon.  Can you confirm?
>>
>> Ping?
> 
> I'm not dead, just sleeping ;-)
> 
> Yes, I see the same behaviour.  When I looked into this, it seems to be 
> because the taskbar doesn't re-evaluate if the window should be in it or 
> not when the style is changed, but only when a ShowWindow() occurs.

Attached is an updated version of this patch which fixes that problem, but the 
changes involved are rather larger than I'm happy with.

This patch re-arranges the sequence of events at window creation so we check 
all the styles before we first show the window (which is good)

However, it then exposes another problem: at the moment we only do this window 
styling at window creation time, if the hinting properties are updated after 
the window is shown, we don't use them.

This is accidentally demonstrated in the small test case posted previously as 
XMapWindow() occurs before XChangeProperty(): reverse the order and window is 
reliably styled correctly, but as it stands it is timing sensitive as to if 
the XChangeProperty() takes effect before or after we show the window...

So, I've added some more code to use the PropertyNotify event to watch for 
hint changes, but as written this is very inefficient, so needs more work...

-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: 1.5-hint-handling-skip-taskbar.patch
URL: <http://cygwin.com/pipermail/cygwin-xfree/attachments/20090106/9ba04ca8/attachment.ksh>
-------------- next part --------------
--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://x.cygwin.com/docs/
FAQ:                   http://x.cygwin.com/docs/faq/


More information about the Cygwin-xfree mailing list