XEmbed Systray Support

James Liggett jrliggett at cox.net
Wed Sep 21 18:40:50 CDT 2005


Adding the locking fixes the problem about icons not docking properly
that I described in one of my posts yesterday. It's much better now.

James

On Wed, 2005-09-21 at 13:58 -0500, Robert Shearman wrote:
> 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?
> 




More information about the wine-devel mailing list