diff options
author | Peter Hutterer <peter.hutterer@who-t.net> | 2009-02-02 17:18:16 +1000 |
---|---|---|
committer | Peter Hutterer <peter.hutterer@who-t.net> | 2009-02-23 17:52:40 +1000 |
commit | 0b4066c116e07918a13dc6b4159df7ac9eb92b4b (patch) | |
tree | fceb13bfcefb0d4089b3a201231deb67688da216 | |
parent | 085d50360863ccc8280cd3eccea2bcb4f3dd9a14 (diff) |
xkb: _XkbFilterRedirectKey needs to pass InternalEvents down.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
-rw-r--r-- | xkb/xkbActions.c | 20 |
1 files changed, 10 insertions, 10 deletions
diff --git a/xkb/xkbActions.c b/xkb/xkbActions.c index afc42f31d..3a2c51740 100644 --- a/xkb/xkbActions.c +++ b/xkb/xkbActions.c @@ -798,7 +798,7 @@ _XkbFilterRedirectKey( XkbSrvInfoPtr xkbi, unsigned keycode, XkbAction * pAction) { -xEvent ev; +DeviceEvent ev; int x,y; XkbStateRec old; unsigned mods,mask; @@ -813,9 +813,11 @@ ProcessInputProc backupproc; return 1; GetSpritePosition(inputInfo.pointer, &x,&y); - ev.u.keyButtonPointer.time = GetTimeInMillis(); - ev.u.keyButtonPointer.rootX = x; - ev.u.keyButtonPointer.rootY = y; + ev.header = ET_Internal; + ev.length = sizeof(DeviceEvent); + ev.time = GetTimeInMillis(); + ev.root_x = x; + ev.root_y = y; if (filter->keycode==0) { /* initial press */ if ((pAction->redirect.new_key<xkbi->desc->min_key_code)|| @@ -829,9 +831,8 @@ ProcessInputProc backupproc; filter->filter = _XkbFilterRedirectKey; filter->upAction = *pAction; - /* XXX: what about DeviceKeyPress */ - ev.u.u.type = KeyPress; - ev.u.u.detail = pAction->redirect.new_key; + ev.type = ET_KeyPress; + ev.detail.key = pAction->redirect.new_key; mask= pAction->redirect.vmods_mask; mods= pAction->redirect.vmods; @@ -861,9 +862,8 @@ ProcessInputProc backupproc; } else if (filter->keycode==keycode) { - /* XXX: what about DeviceKeyRelease */ - ev.u.u.type = KeyRelease; - ev.u.u.detail = filter->upAction.redirect.new_key; + ev.type = ET_KeyRelease; + ev.detail.key = filter->upAction.redirect.new_key; mask= filter->upAction.redirect.vmods_mask; mods= filter->upAction.redirect.vmods; |