diff options
author | Peter Hutterer <peter.hutterer@who-t.net> | 2010-07-05 16:47:57 +1000 |
---|---|---|
committer | Peter Hutterer <peter.hutterer@who-t.net> | 2010-07-07 13:29:45 +1000 |
commit | c18442908080c9833dfd6bb2ff367945d1892421 (patch) | |
tree | eccbe0ff3d155d58a8344b9d75609319b1416784 | |
parent | 10442ce02b5be7f82b373bee1939e2b523e291d9 (diff) |
Xi: use set_key_up/down instead of manual bit handling.
We have the wrappers, use them.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
-rw-r--r-- | Xi/exevents.c | 13 |
1 files changed, 6 insertions, 7 deletions
diff --git a/Xi/exevents.c b/Xi/exevents.c index de24b4cc1..df13190a8 100644 --- a/Xi/exevents.c +++ b/Xi/exevents.c @@ -814,23 +814,22 @@ UpdateDeviceState(DeviceIntPtr device, DeviceEvent* event) if (!k) return DONT_PROCESS; - kptr = &k->down[key >> 3]; - /* don't allow ddx to generate multiple downs, but repeats are okay */ - if ((*kptr & bit) && !event->key_repeat) + /* don't allow ddx to generate multiple downs, but repeats are okay */ + if (key_is_down(device, key, KEY_PROCESSED) && !event->key_repeat) return DONT_PROCESS; + if (device->valuator) device->valuator->motionHintWindow = NullWindow; - *kptr |= bit; + set_key_down(device, key, KEY_PROCESSED); } else if (event->type == ET_KeyRelease) { if (!k) return DONT_PROCESS; - kptr = &k->down[key >> 3]; - if (!(*kptr & bit)) /* guard against duplicates */ + if (!key_is_down(device, key, KEY_PROCESSED)) /* guard against duplicates */ return DONT_PROCESS; if (device->valuator) device->valuator->motionHintWindow = NullWindow; - *kptr &= ~bit; + set_key_up(device, key, KEY_PROCESSED); } else if (event->type == ET_ButtonPress) { Mask mask; if (!b) |