diff options
Diffstat (limited to 'xkb/xkbActions.c')
-rw-r--r-- | xkb/xkbActions.c | 24 |
1 files changed, 7 insertions, 17 deletions
diff --git a/xkb/xkbActions.c b/xkb/xkbActions.c index c62910f6b..e50dbfe60 100644 --- a/xkb/xkbActions.c +++ b/xkb/xkbActions.c @@ -1148,7 +1148,6 @@ XkbAction act; XkbFilterPtr filter; Bool keyEvent; Bool pressEvent; -Bool xiEvent; ProcessInputProc backupproc; xkbDeviceInfoPtr xkbPrivPtr = XKBDEVICEINFO(dev); @@ -1173,9 +1172,6 @@ xkbDeviceInfoPtr xkbPrivPtr = XKBDEVICEINFO(dev); (xE->u.u.type==KeyRelease)||(xE->u.u.type==DeviceKeyRelease)); pressEvent= (xE->u.u.type==KeyPress)||(xE->u.u.type==DeviceKeyPress)|| (xE->u.u.type==ButtonPress)||(xE->u.u.type==DeviceButtonPress); - xiEvent= (xE->u.u.type==DeviceKeyPress)||(xE->u.u.type==DeviceKeyRelease)|| - (xE->u.u.type==DeviceButtonPress)|| - (xE->u.u.type==DeviceButtonRelease); if (pressEvent) { if (keyEvent) @@ -1282,20 +1278,14 @@ xkbDeviceInfoPtr xkbPrivPtr = XKBDEVICEINFO(dev); if (keyEvent) { realMods = keyc->modifierMap[key]; keyc->modifierMap[key] = 0; - UNWRAP_PROCESS_INPUT_PROC(dev,xkbPrivPtr, backupproc); - dev->public.processInputProc(xE,dev,count); - COND_WRAP_PROCESS_INPUT_PROC(dev, xkbPrivPtr, - backupproc,xkbUnwrapProc); - keyc->modifierMap[key] = realMods; - } - else - { - if (xE->u.u.type & EXTENSION_EVENT_BASE) - ProcessOtherEvent(xE, dev, count); - else - CoreProcessPointerEvent(xE,dev,count); - } + + UNWRAP_PROCESS_INPUT_PROC(dev,xkbPrivPtr, backupproc); + dev->public.processInputProc(xE,dev,count); + COND_WRAP_PROCESS_INPUT_PROC(dev, xkbPrivPtr, + backupproc,xkbUnwrapProc); + if (keyEvent) + keyc->modifierMap[key] = realMods; } else if (keyEvent) FixKeyState(xE,dev); |