ei_pointer
Pointer Object
Interface for pointer motion requests and events.
This interface is only provided once per device and where a client
requests ei_pointer.release
the interface does not get re-initialized. An
EIS implementation may adjust the behavior of the device (including removing
the device) if the interface is releasd.
Note that for a client to receive objects of this type, it must announce
support for this interface in ei_handshake.interface_version.
Requests
ei_pointer.release
Since Version1 Request Opcode0
ei_pointer.release()
Notification that the client is no longer interested in this pointer.
The EIS implementation will release any resources related to this pointer and
send the ei_pointer.destroyed
event once complete.
ei_pointer.motion_relative
Since Version1 Request Opcode1
ei_pointer.motion_relative(x, y)
Argument | Type | Summary |
---|---|---|
x | float |
the x movement in logical pixels |
y | float |
the y movement in logical pixels |
This request is only available for clients of ei_handshake.context_type.sender
.
Generate a relative motion event on this pointer.
It is a client bug to send this request more than once
within the same ei_device.frame
and the EIS implementation
may ignore either or all such requests and/or disconnect the client.
It is a protocol violation to send this request for a client
of an ei_handshake.context_type
other than sender.
Events
ei_pointer.destroyed
Since Version1 Event Opcode0
ei_pointer.destroyed(serial)
Argument | Type | Summary |
---|---|---|
serial | uint32 |
this event’s serial number |
Immediately after sending this request, the object is considered destroyed by the EIS implementation. It must no longer be used by the client.
This object has been removed and a client should release all associated resources.
This object will be destroyed by the EIS implementation immmediately after after this event is sent and as such the client must not attempt to use it after that point.
ei_pointer.motion_relative
Since Version1 Event Opcode1
ei_pointer.motion_relative(x, y)
Argument | Type | Summary |
---|---|---|
x | float |
|
y | float |
This event is only available for clients of ei_handshake.context_type.receiver
.
See the ei_pointer.motion_relative
request for details.
It is a protocol violation to send this request for a client
of an ei_handshake.context_type
other than receiver.