Path: utzoo!utgpu!news-server.csri.toronto.edu!mailrus!uunet!mcsun!ukc!harrier.ukc.ac.uk!rlh2 From: rlh2@ukc.ac.uk (R.L.Hesketh) Newsgroups: comp.windows.x Subject: Re: EventMask for XSendEvent Message-ID: <4614@harrier.ukc.ac.uk> Date: 9 May 90 17:02:05 GMT References: <26900116@m.cs.uiuc.edu> Reply-To: rlh2@ukc.ac.uk (Richard Hesketh) Organization: Computing Lab, University of Kent at Canterbury, UK. Lines: 32 In article <26900116@m.cs.uiuc.edu> carroll@m.cs.uiuc.edu writes: >I'm having problems with Client Messages and XSendEvent. The code works on a >SysV 11R3 system, but not on Sun-3's or Sparcs with SunOS4.0.3 & 11R4. Ahh, that little nut. I think this one is getting popular enough to become a "common asked question about X11". >In desperation, I tried the following: > XSendEvent(xr->dpy,xr->id,False, > SubstructureNotifyMask | SubstructureRedirectMask, > ,&ev); Try .. XSendEvent(xr->dpy, xr->id, False, 0L, &ev); (ie. a null event mask) Xlib manual (section 8.10): "If the event_mask is the empty set, the event is sent to the client that created the destination window. If that client no longer exists, no event is sent." >What I want to know is why I can't send it with _all_ the event >mask bits set? The ClientMessage event is non-maskable and does not have an event mask. > Was something changed here from R3 to R4? Thanks! Yup, the MIT Server is stricter about obeying the protocol.