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