aboutsummaryrefslogtreecommitdiff
path: root/xorg-server/dix/events.c
diff options
context:
space:
mode:
authormarha <marha@users.sourceforge.net>2010-07-07 06:21:38 +0000
committermarha <marha@users.sourceforge.net>2010-07-07 06:21:38 +0000
commit5da15e274b35656568f59602f2e3fd00d5718879 (patch)
treefd10e6e7f99de6769eaef050a63de8e2d55d638d /xorg-server/dix/events.c
parent1888d52b15666fb0fe1d47c329d92335e6d9157f (diff)
downloadvcxsrv-5da15e274b35656568f59602f2e3fd00d5718879.tar.gz
vcxsrv-5da15e274b35656568f59602f2e3fd00d5718879.tar.bz2
vcxsrv-5da15e274b35656568f59602f2e3fd00d5718879.zip
git update 7/7/2010
Diffstat (limited to 'xorg-server/dix/events.c')
-rw-r--r--xorg-server/dix/events.c12
1 files changed, 3 insertions, 9 deletions
diff --git a/xorg-server/dix/events.c b/xorg-server/dix/events.c
index 13c91f68a..c9a73dc90 100644
--- a/xorg-server/dix/events.c
+++ b/xorg-server/dix/events.c
@@ -3937,13 +3937,7 @@ DeliverGrabbedEvent(InternalEvent *event, DeviceIntPtr thisDev,
void
FixKeyState (DeviceEvent *event, DeviceIntPtr keybd)
{
- int key, bit;
- BYTE *kptr;
- KeyClassPtr keyc = keybd->key;
-
- key = event->detail.key;
- kptr = &keyc->down[key >> 3];
- bit = 1 << (key & 7);
+ int key = event->detail.key;
if (event->type == ET_KeyPress) {
DebugF("FixKeyState: Key %d %s\n",key,
@@ -3951,9 +3945,9 @@ FixKeyState (DeviceEvent *event, DeviceIntPtr keybd)
}
if (event->type == ET_KeyPress)
- *kptr |= bit;
+ set_key_down(keybd, key, KEY_PROCESSED);
else if (event->type == ET_KeyRelease)
- *kptr &= ~bit;
+ set_key_up(keybd, key, KEY_PROCESSED);
else
FatalError("Impossible keyboard event");
}