diff options
author | Peter Hutterer <peter@cs.unisa.edu.au> | 2007-06-21 17:00:41 +0930 |
---|---|---|
committer | Peter Hutterer <peter@cs.unisa.edu.au> | 2007-06-21 17:42:36 +0930 |
commit | 8431f6083076cf1e701366767d8f8d32a628200f (patch) | |
tree | 0214087607164eb439ea5af1dcb9b08c0a2e9fad | |
parent | 0c33dc152e372cdc8ae59d9a5696b0774bcd03b7 (diff) |
Save processInputProc before wrapping it and restore it later, instead of
using a hardcoded ProcessKeyboardEvent. Otherwise we lose the ability to
process DeviceKeyEvents after the first key press.
-rw-r--r-- | xkb/xkbActions.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/xkb/xkbActions.c b/xkb/xkbActions.c index 4c3efe28d..156fb2649 100644 --- a/xkb/xkbActions.c +++ b/xkb/xkbActions.c @@ -1300,7 +1300,8 @@ xkbDeviceInfoPtr xkbPrivPtr = XKBDEVICEINFO(dev); UNWRAP_PROCESS_INPUT_PROC(dev,xkbPrivPtr); dev->public.processInputProc(xE,dev,count); COND_WRAP_PROCESS_INPUT_PROC(dev, xkbPrivPtr, - ProcessKeyboardEvent,xkbUnwrapProc); + (dev == inputInfo.keyboard) ? ProcessKeyboardEvent : ProcessOtherEvent, + xkbUnwrapProc); keyc->modifierMap[key] = realMods; } else CoreProcessPointerEvent(xE,dev,count); |