[CFT] Xorg 7.5.1
Martin Wilke
miwi at FreeBSD.org
Sun Feb 27 23:03:14 UTC 2011
go and commit :)
On Mon, Feb 28, 2011 at 5:23 AM, Christian Weisgerber <naddy at mips.inka.de>wrote:
> Martin Wilke <miwi at 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 at mips.inka.de
>
> _______________________________________________
> freebsd-x11 at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-x11
> To unsubscribe, send any mail to "freebsd-x11-unsubscribe at freebsd.org"
>
More information about the freebsd-x11
mailing list