aboutsummaryrefslogtreecommitdiff
path: root/xorg-server/Xi/ungrdevk.c
diff options
context:
space:
mode:
Diffstat (limited to 'xorg-server/Xi/ungrdevk.c')
-rw-r--r--xorg-server/Xi/ungrdevk.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/xorg-server/Xi/ungrdevk.c b/xorg-server/Xi/ungrdevk.c
index bc3ada987..3b4d6260e 100644
--- a/xorg-server/Xi/ungrdevk.c
+++ b/xorg-server/Xi/ungrdevk.c
@@ -50,8 +50,6 @@ SOFTWARE.
*
*/
-#define NEED_EVENTS
-#define NEED_REPLIES
#ifdef HAVE_DIX_CONFIG_H
#include <dix-config.h>
#endif
@@ -62,6 +60,8 @@ SOFTWARE.
#include <X11/extensions/XIproto.h>
#include "exglobals.h"
#include "dixgrabs.h"
+#include "xkbsrv.h"
+#include "xkbstr.h"
#include "ungrdevk.h"
@@ -126,8 +126,8 @@ ProcXUngrabDeviceKey(ClientPtr client)
if (rc != Success)
return rc;
- if (((stuff->key > dev->key->curKeySyms.maxKeyCode) ||
- (stuff->key < dev->key->curKeySyms.minKeyCode))
+ if (((stuff->key > dev->key->xkbInfo->desc->max_key_code) ||
+ (stuff->key < dev->key->xkbInfo->desc->min_key_code))
&& (stuff->key != AnyKey))
return BadValue;
@@ -139,6 +139,7 @@ ProcXUngrabDeviceKey(ClientPtr client)
temporaryGrab.device = dev;
temporaryGrab.window = pWin;
temporaryGrab.type = DeviceKeyPress;
+ temporaryGrab.grabtype = GRABTYPE_XI;
temporaryGrab.modifierDevice = mdev;
temporaryGrab.modifiersDetail.exact = stuff->modifiers;
temporaryGrab.modifiersDetail.pMask = NULL;