[PATCH inputproto multitouch] specs: clarify button state in touch events
peter.hutterer at who-t.net
Tue Dec 13 14:56:59 PST 2011
Emulated pointer events will have button 1 logically down, but touch events
only represent the actual button state, irrespective of the touches.
Signed-off-by: Peter Hutterer <peter.hutterer at who-t.net>
specs/XI2proto.txt | 9 +++++++--
1 files changed, 7 insertions(+), 2 deletions(-)
diff --git a/specs/XI2proto.txt b/specs/XI2proto.txt
index dcc2bc9..8b79210 100644
@@ -467,10 +467,12 @@ Pointer events are emulated as follows:
touch with the same axis values of the touch event, followed by a button press
event for button 1.
- A TouchUpdate event generates a pointer motion event to the location of the
- touch and/or to update axis values of the pointer device.
+ touch and/or to update axis values of the pointer device. The button state
+ as seen from the protocol includes button 1 set.
- A TouchEnd event generates a pointer motion event to the location of the touch
and/or to update the axis values if either have changed, followed by a button
- release event for button 1.
+ release event for button 1. The button state as seen from the protocol
+ includes button 1 set.
If a touch sequence emulates pointer events and an emulated pointer event
triggers the activation of a passive grab, the grabbing client becomes the
@@ -2150,6 +2152,9 @@ of IDs. The increment between two touch IDs is indeterminate. Clients may not
assume that any future touches will have specific touch IDs. IDs are globally
+The button state in touch events represents the state of the device's
+physical buttons only, even if that sequence is emulating pointer events.
Touch events do not generate enter/leave events.
More information about the xorg-devel