Date: Mon, 28 Feb 2011 07:03:11 +0800 From: Martin Wilke <miwi@FreeBSD.org> To: Christian Weisgerber <naddy@mips.inka.de> Cc: freebsd-x11@freebsd.org Subject: Re: [CFT] Xorg 7.5.1 Message-ID: <AANLkTikabGkzpJHMbKJMCvwBbrTUGuZ9KHrQ9-uGgTAK@mail.gmail.com> In-Reply-To: <ikefch$gt8$1@lorvorc.mips.inka.de> References: <20110219132508.GA32464@gmail.com> <ikefch$gt8$1@lorvorc.mips.inka.de>
next in thread | previous in thread | raw e-mail | index | archive | help
go and commit :) On Mon, Feb 28, 2011 at 5:23 AM, Christian Weisgerber <naddy@mips.inka.de>wrote: > Martin Wilke <miwi@freebsd.org> wrote: > > > The Xorg T(m)eam is happy to announce the next round of Xorg fun! The > X-Server > > has been patched to the latest 1.7.X series, drivers and fonts have been > > updated to the latest versions, > > Now that this has been committed, can we *please* have the > > Revert "dix: use the event mask of the grab for TryClientEvents." > > http://cgit.freedesktop.org/xorg/xserver/commit/?id=018c878e9495b21146c8f38617fdd1bf6d8cc73b > > change, too? I don't know if there is other Motif fallout, but > without this, mwm(1) at least is unusable. > > I'd commit it myself, but I don't want to step on any toes. > > > --- dix/events.c > +++ dix/events.c > @@ -3420,7 +3420,6 @@ CheckPassiveGrabsOnWindow( > { > DeviceIntPtr gdev; > XkbSrvInfoPtr xkbi = NULL; > - Mask mask = 0; > > gdev= grab->modifierDevice; > if (grab->grabtype == GRABTYPE_CORE) > @@ -3535,9 +3534,6 @@ CheckPassiveGrabsOnWindow( > } > xE = &core; > count = 1; > - mask = grab->eventMask; > - if (grab->ownerEvents) > - mask |= pWin->eventMask; > } else if (match & XI2_MATCH) > { > rc = EventToXI2((InternalEvent*)event, &xE); > @@ -3549,34 +3545,6 @@ CheckPassiveGrabsOnWindow( > continue; > } > count = 1; > - > - /* FIXME: EventToXI2 returns NULL for enter events, so > - * dereferencing the event is bad. Internal event types > are > - * aligned with core events, so the else clause is valid. > - * long-term we should use internal events for enter/focus > - * as well */ > - if (xE) > - mask = > grab->xi2mask[device->id][((xGenericEvent*)xE)->evtype/8]; > - else if (event->type == XI_Enter || event->type == > XI_FocusIn) > - mask = grab->xi2mask[device->id][event->type/8]; > - > - if (grab->ownerEvents && wOtherInputMasks(grab->window)) > - { > - InputClientsPtr icp = > - wOtherInputMasks(grab->window)->inputClients; > - > - while(icp) > - { > - if (rClient(icp) == rClient(grab)) > - { > - int evtype = (xE) ? > ((xGenericEvent*)xE)->evtype : event->type; > - mask |= icp->xi2mask[device->id][evtype/8]; > - break; > - } > - > - icp = icp->next; > - } > - } > } else > { > rc = EventToXI((InternalEvent*)event, &xE, &count); > @@ -3587,23 +3555,6 @@ CheckPassiveGrabsOnWindow( > "(%d, %d).\n", device->name, event->type, > rc); > continue; > } > - mask = grab->eventMask; > - if (grab->ownerEvents && wOtherInputMasks(grab->window)) > - { > - InputClientsPtr icp = > - wOtherInputMasks(grab->window)->inputClients; > - > - while(icp) > - { > - if (rClient(icp) == rClient(grab)) > - { > - mask |= icp->mask[device->id]; > - break; > - } > - > - icp = icp->next; > - } > - } > } > > (*grabinfo->ActivateGrab)(device, grab, currentTime, TRUE); > @@ -3612,7 +3563,8 @@ CheckPassiveGrabsOnWindow( > { > FixUpEventFromWindow(device, xE, grab->window, None, TRUE); > > - TryClientEvents(rClient(grab), device, xE, count, mask, > + TryClientEvents(rClient(grab), device, xE, count, > + GetEventFilter(device, xE), > GetEventFilter(device, xE), grab); > } > > -- > Christian "naddy" Weisgerber naddy@mips.inka.de > > _______________________________________________ > freebsd-x11@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-x11 > To unsubscribe, send any mail to "freebsd-x11-unsubscribe@freebsd.org" >
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?AANLkTikabGkzpJHMbKJMCvwBbrTUGuZ9KHrQ9-uGgTAK>
