summaryrefslogtreecommitdiff
path: root/Xi
diff options
context:
space:
mode:
authorChase Douglas <chase.douglas@canonical.com>2012-03-29 18:06:03 -0700
committerKeith Packard <keithp@keithp.com>2012-04-05 14:36:46 -0700
commit1110facdfeb95b1ad47d03c0ca3d73933b86dbd6 (patch)
treec940f71a6f459e9356a51ffc4cd523344ad4c760 /Xi
parente9d3848d7bda7f7de4c0f497aee4482d0b30ad49 (diff)
Implement passive touch ungrabbing
Whoops. Forgot to implement this. The code currently generates an error due to the unhandled grab type. X.Org Bug 48069 <https://bugs.freedesktop.org/show_bug.cgi?id=48069> Signed-off-by: Chase Douglas <chase.douglas@canonical.com> Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net> Signed-off-by: Keith Packard <keithp@keithp.com>
Diffstat (limited to 'Xi')
-rw-r--r--Xi/xipassivegrab.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/Xi/xipassivegrab.c b/Xi/xipassivegrab.c
index 8a1c59968..7130328ec 100644
--- a/Xi/xipassivegrab.c
+++ b/Xi/xipassivegrab.c
@@ -290,13 +290,15 @@ ProcXIPassiveUngrabDevice(ClientPtr client)
if (stuff->grab_type != XIGrabtypeButton &&
stuff->grab_type != XIGrabtypeKeycode &&
stuff->grab_type != XIGrabtypeEnter &&
- stuff->grab_type != XIGrabtypeFocusIn) {
+ stuff->grab_type != XIGrabtypeFocusIn &&
+ stuff->grab_type != XIGrabtypeTouchBegin) {
client->errorValue = stuff->grab_type;
return BadValue;
}
if ((stuff->grab_type == XIGrabtypeEnter ||
- stuff->grab_type == XIGrabtypeFocusIn) && stuff->detail != 0) {
+ stuff->grab_type == XIGrabtypeFocusIn ||
+ stuff->grab_type == XIGrabtypeTouchBegin) && stuff->detail != 0) {
client->errorValue = stuff->detail;
return BadValue;
}
@@ -327,6 +329,9 @@ ProcXIPassiveUngrabDevice(ClientPtr client)
case XIGrabtypeFocusIn:
tempGrab->type = XI_FocusIn;
break;
+ case XIGrabtypeTouchBegin:
+ tempGrab->type = XI_TouchBegin;
+ break;
}
tempGrab->grabtype = XI2;
tempGrab->modifierDevice = mod_dev;