XEmbed Systray Support

Robert Shearman rob at codeweavers.com
Wed Sep 21 13:58:52 CDT 2005


Alexandre Julliard wrote:

>Robert Shearman <rob at codeweavers.com> writes:
>  
>
>>+        ev.xclient.type = ClientMessage;
>>+        ev.xclient.window = systray_window;
>>+        ev.xclient.message_type = x11drv_atom(_NET_SYSTEM_TRAY_OPCODE);
>>+        ev.xclient.format = 32;
>>+        ev.xclient.data.l[0] = CurrentTime;
>>+        ev.xclient.data.l[1] = SYSTEM_TRAY_REQUEST_DOCK;
>>+        ev.xclient.data.l[2] = data->whole_window;
>>+        XSendEvent( display, systray_window, False, NoEventMask, &ev );
>>+        XSync( display, False );
>>    
>>
>
>You need to get the tsx11 lock when calling X functions. Also what's
>the reason for having an XSync here?
>

I've added the locking. The XSync is needed because without it the 
systray window ends up with a width of 1. I don't understand why this is 
happening. What debug channels would be good to turn on to investigate this?

-- 
Rob Shearman




More information about the wine-devel mailing list