XKB: Don't update indicators on all devices, add missing include file

Don't get XkbUpdateIndicators to update the indicators on all our devices: we
already deal with that ourselves.
Add exevents.h include to get more (proto)types.
This commit is contained in:
Daniel Stone 2007-10-27 21:31:39 +03:00
parent ee3aa948eb
commit 9db8846fa5

View File

@ -36,6 +36,7 @@ THE USE OR PERFORMANCE OF THIS SOFTWARE.
#include <X11/keysym.h>
#include "misc.h"
#include "inputstr.h"
#include "exevents.h"
#include <xkbsrv.h>
#include "xkb.h"
#include <ctype.h>
@ -80,8 +81,7 @@ XkbSetExtension(DeviceIntPtr device, ProcessInputProc proc)
xkbPrivPtr->unwrapProc = NULL;
device->devPrivates[xkbDevicePrivateIndex].ptr = xkbPrivPtr;
WRAP_PROCESS_INPUT_PROC(device,xkbPrivPtr,
proc,xkbUnwrapProc);
WRAP_PROCESS_INPUT_PROC(device, xkbPrivPtr, proc, xkbUnwrapProc);
}
extern void ProcessOtherEvent(
@ -400,7 +400,6 @@ _XkbFilterLockState( XkbSrvInfoPtr xkbi,
unsigned keycode,
XkbAction * pAction)
{
if (pAction&&(pAction->type==XkbSA_LockGroup)) {
if (pAction->group.flags&XkbSA_GroupAbsolute)
xkbi->state.locked_group= XkbSAGroup(&pAction->group);
@ -1287,8 +1286,9 @@ xkbDeviceInfoPtr xkbPrivPtr = XKBDEVICEINFO(dev);
if (keyEvent)
keyc->modifierMap[key] = realMods;
}
else if (keyEvent)
else if (keyEvent) {
FixKeyState(xE,dev);
}
xkbi->prev_state= oldState;
XkbComputeDerivedState(xkbi);
@ -1310,7 +1310,7 @@ xkbDeviceInfoPtr xkbPrivPtr = XKBDEVICEINFO(dev);
if (changed) {
XkbEventCauseRec cause;
XkbSetCauseKey(&cause,key,xE->u.u.type);
XkbUpdateIndicators(dev,changed,True,NULL,&cause);
XkbUpdateIndicators(dev,changed,False,NULL,&cause);
}
return;
}