[PATCH][master][1.12] Implement passive touch ungrabbing
Peter Hutterer
peter.hutterer at who-t.net
Fri Mar 30 15:21:06 PDT 2012
,On 30/03/12 11:06 , Chase Douglas wrote:
> 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 at canonical.com>
Reviewed-by: Peter Hutterer <peter.hutterer at who-t.net>
Keith, please merge this directly.
> ---
> Xi/xipassivegrab.c | 9 +++++++--
> 1 files changed, 7 insertions(+), 2 deletions(-)
>
> diff --git a/Xi/xipassivegrab.c b/Xi/xipassivegrab.c
> index 8a1c599..7130328 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;
More information about the xorg-devel
mailing list