diff options
| author | Peter Hutterer <peter.hutterer@who-t.net> | 2011-12-14 16:30:05 +1000 |
|---|---|---|
| committer | Peter Hutterer <peter.hutterer@who-t.net> | 2011-12-21 12:38:35 +1000 |
| commit | 593c3e2eb3da5c5fb957b68c8025dfdbe1139639 (patch) | |
| tree | 100e7b7018ba174a055f8bc7097b9fe719b6a47b | |
| parent | 5d0260cc986e8c1f0907870b851d47fd73bb1b7d (diff) | |
dix: add TouchResourceIsOwner helper function
The first listener in the sequence is the owner of the touch sequence.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
| -rw-r--r-- | dix/touch.c | 10 | ||||
| -rw-r--r-- | include/input.h | 1 |
2 files changed, 11 insertions, 0 deletions
diff --git a/dix/touch.c b/dix/touch.c index 7207fd680..3e45e35a4 100644 --- a/dix/touch.c +++ b/dix/touch.c @@ -619,6 +619,16 @@ TouchGetPointerEventType(const InternalEvent *event) /** + * @returns TRUE if the specified grab or selection is the current owner of + * the touch sequence. + */ +Bool +TouchResourceIsOwner(TouchPointInfoPtr ti, XID resource) +{ + return (ti->listeners[0].listener == resource); +} + +/** * Add the resource to this touch's listeners. */ void diff --git a/include/input.h b/include/input.h index a6de82458..a6bdce060 100644 --- a/include/input.h +++ b/include/input.h @@ -611,6 +611,7 @@ extern Bool TouchEventHistoryAllocate(TouchPointInfoPtr ti); extern void TouchEventHistoryFree(TouchPointInfoPtr ti); extern void TouchEventHistoryPush(TouchPointInfoPtr ti, const DeviceEvent *ev); extern void TouchEventHistoryReplay(TouchPointInfoPtr ti, DeviceIntPtr dev, XID resource); +extern Bool TouchResourceIsOwner(TouchPointInfoPtr ti, XID resource); extern void TouchAddListener(TouchPointInfoPtr ti, XID resource, enum InputLevel level, enum TouchListenerType type, enum TouchListenerState state); extern Bool TouchRemoveListener(TouchPointInfoPtr ti, XID resource); |
