diff options
Diffstat (limited to 'xorg-server/hw/dmx/input/dmxevents.c')
-rw-r--r-- | xorg-server/hw/dmx/input/dmxevents.c | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/xorg-server/hw/dmx/input/dmxevents.c b/xorg-server/hw/dmx/input/dmxevents.c index 24275a189..37f8cb33b 100644 --- a/xorg-server/hw/dmx/input/dmxevents.c +++ b/xorg-server/hw/dmx/input/dmxevents.c @@ -56,6 +56,7 @@ #include "inputstr.h" #include "mipointer.h" #include "mi.h" +#include "exglobals.h" #include "XIstubs.h" @@ -99,7 +100,6 @@ static int dmxCheckFunctionKeys(DMXLocalInputInfoPtr dmxLocal, KeySym keySym) { DMXInputInfo *dmxInput = &dmxInputs[dmxLocal->inputIdx]; - unsigned short state = 0; #if 1 /* hack to detect ctrl-alt-q, etc */ static int ctrl = 0, alt = 0; @@ -119,6 +119,8 @@ static int dmxCheckFunctionKeys(DMXLocalInputInfoPtr dmxLocal, if (!ctrl || !alt) return 0; #else + unsigned short state = 0; + if (dmxLocal->sendsCore) state = dmxLocalCoreKeyboard->pDevice->key->state; else if (dmxLocal->pDevice->key) @@ -236,7 +238,7 @@ static void enqueueMotion(DevicePtr pDev, int x, int y) nevents = GetPointerEvents(events, p, MotionNotify, detail, POINTER_ABSOLUTE, 0, 2, valuators); for (i = 0; i < nevents; i++) - mieqEnqueue(p, (events + i)->event); + mieqEnqueue(p, (InternalEvent*)(events + i)->event); return; } @@ -694,7 +696,7 @@ void dmxEnqueue(DevicePtr pDev, int type, int detail, KeySym keySym, /*ErrorF("KEY %d sym %d\n", detail, (int) keySym);*/ nevents = GetKeyboardEvents(events, p, type, detail); for (i = 0; i < nevents; i++) - mieqEnqueue(p, (events + i)->event); + mieqEnqueue(p, (InternalEvent*)(events + i)->event); return; case ButtonPress: @@ -707,7 +709,7 @@ void dmxEnqueue(DevicePtr pDev, int type, int detail, KeySym keySym, 0, /* num_valuators = 0 */ valuators); for (i = 0; i < nevents; i++) - mieqEnqueue(p, (events + i)->event); + mieqEnqueue(p, (InternalEvent*)(events + i)->event); return; case MotionNotify: @@ -718,7 +720,7 @@ void dmxEnqueue(DevicePtr pDev, int type, int detail, KeySym keySym, nevents = GetPointerEvents(events, p, type, detail, POINTER_ABSOLUTE, 0, 3, valuators); for (i = 0; i < nevents; i++) - mieqEnqueue(p, (events + i)->event); + mieqEnqueue(p, (InternalEvent*)(events + i)->event); return; case EnterNotify: |