summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Hutterer <peter.hutterer@who-t.net>2011-03-18 12:12:47 +1000
committerPeter Hutterer <peter.hutterer@who-t.net>2011-03-18 16:20:09 +1000
commit1d720b30c996a693014f2c70004c9717945b574f (patch)
treec948609e1412df91b0748f840a761934e9efc2a7
parenta4583dcd3e1c18e5c0cc616c143aafbf7ec1d88b (diff)
specs: move touch sequence handling (owner-only) up a bit.
This is to restructure to get the simple cases clarified up first before explaining more complex changes. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
-rw-r--r--specs/XI2proto.txt18
1 files changed, 18 insertions, 0 deletions
diff --git a/specs/XI2proto.txt b/specs/XI2proto.txt
index d76962d..508c867 100644
--- a/specs/XI2proto.txt
+++ b/specs/XI2proto.txt
@@ -239,6 +239,24 @@ types TouchBegin, TouchUpdate, and TouchEnd, respectively.
A touch sequence always generates TouchBeing and TouchEnd events. It may
generate TouchUpdate events.
+A client must select for TouchBegin, TouchUpdate, and TouchEnd events. A
+TouchBegin event is sent to the client with the position information and
+properties of the touch when it began on the touch device.
+Note that the logical state of a device (as seen by means of the
+protocol) may lag the physical state if device event processing is
+affected by grabs. The event timestamp of touch events always represents the
+time the event occurred.
+
+A TouchUpdate event is sent to the client whenever the position or any other
+property of the touch changes. Note that the server may compress multiple
+TouchUpdate events into one. If compression occurs, the TouchUpdate event
+represents the last state of the touch.
+
+A TouchEnd event is sent to the client when the touch ceases.
+
+4.4.2 Ownership of touch events
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
Touch sequences may send events to multiple clients in parallel. At any given
time, only one client is in control of the touch sequence and is referred to as
the "owner" of the sequence.