-<node name="/node" xmlns:tp="http://telepathy.freedesktop.org/wiki/DbusSpec#extensions-v0">
-<tp:struct name="EventListenerMode">
- <tp:docstring xmlns="http://www.w3.org/1999/xhtml">
- <p>A structure that encapsulates the characteristics of the event notifications
- that should be sent to an EventListener in response to a call to
- DeviceEventController.registerKeystrokeListener or
- DeviceEventController.registerDeviceEventListener. </p>
- </tp:docstring>
- <tp:member type="b" tp:name="synchronous">
- <tp:docstring xmlns="http://www.w3.org/1999/xhtml">
- <p>If \c <code>True</code>, specifies that
- DeviceEventController should block while waiting
- for client to process the requested event notifications;
- ordinarily should be used only when client needs to perform
- operations synchronously with event delivery. Note that because
- of the architecture of device event systems in general,
- use of this flag may not block delivery of the event to
- the currently focussed application unless it is used in
- conjunction with the preemptive flag. </p>
- </tp:docstring>
- </tp:member>
- <tp:member type="b" tp:name="preemptive">
- <tp:docstring xmlns="http://www.w3.org/1999/xhtml">
- <p>If <code>True</code>, specifies that
- Listener is allowed to pre-empt the delivery of the event,
- effectively 'consuming' it such that it is not delivered
- to the currently focussed desktop application.
- Key events consumed via this API will not be
- available for use by other applications or services, so this
- option should be used sparingly. </p>
- </tp:docstring>
- </tp:member>
- <tp:member type="b" tp:name="global">
- <tp:docstring xmlns="http://www.w3.org/1999/xhtml">
- <p>If <code>True</code>, specifies that
- Event notifications should be sent regardless of whether the
- currently focussed application participates in the AT-SPI
- infrastructure. On systems with the XEvIE X extension, this flag
- also allows access to events which are already subject to
- interception via a 'system keygrab' (as described in the X Window System
- documentation for XGrabKey). The 'global' and 'preemptive' flags
- should only be used together for the purposes of registering
- 'system global key shortcuts' i.e. command keys for use by the
- assistive technology. </p>
- </tp:docstring>
- </tp:member>
-</tp:struct>
-<tp:struct name="DeviceEvent">
- <tp:docstring>
- A structure which encapsulates information about a device event.
- </tp:docstring>
- <tp:member type="u" tp:name="type">
- <tp:docstring>
- Identifies the type of the containing DeviceEvent.
- </tp:docstring>
- </tp:member>
- <tp:member type="i" tp:name="id">
- <tp:docstring xmlns="http://www.w3.org/1999/xhtml">
- <p>An identifier which identifies this event in the event stream.
- On X Window systems this corresponds to the XEvent serial number.</p>
- </tp:docstring>
- </tp:member>
- <tp:member type="n" tp:name="hw_code">
- <tp:docstring xmlns="http://www.w3.org/1999/xhtml">
- <p>A numeric code which is hardware and system-dependent, identifying the
- specific hardware button or key on the device for which the event has
- occurred. On X Window systems, for global key notifications and for most
- non-global key notifications as well, this code corresponds to the
- XKeycode. For switch and button events it indicates the switch
- or button number.
- </p>
- <p>
- For technical reasons, this code may differ from the XKeycode
- when generated by Java applications for consumption by non-global
- key listeners. This is subject to change in future versions of the
- DeviceEventController implementation.
- </p>
- </tp:docstring>
- </tp:member>
- <tp:member type="n" tp:name="modifiers">
- <tp:docstring xmlns="http://www.w3.org/1999/xhtml">
- <p>An unsigned short int consisting of zero or more of the following
- values OR'ed together:
- <ol>
- <li><code>MODIFIER_SHIFT</code> (=1, corresponds to Xlib's ShiftMask)</li>
- <li><code>MODIFIER_SHIFTLOCK</code> (=2, corresponds to Xlib's LockMask)</li>
- <li><code>MODIFIER_CONTROL</code> (=4, corresponds to Xlib's ControlMask)</li>
- <li><code>MODIFIER_ALT</code> (=8, corresponds to Xlib's Mod1Mask)</li>
- <li><code>MODIFIER_META</code> (=16, corresponds to Xlib's Mod2Mask)</li>
- <li><code>MODIFIER_META2</code> (=32, corresponds to Xlib's Mod3Mask)</li>
- <li><code>MODIFIER_META3</code> (=64, corresponds to Xlib's Mod4Mask)</li>
- </ol>
- </p>
- </tp:docstring>
- </tp:member>
- <tp:member type="i" tp:name="timestamp">
- <tp:docstring xmlns="http://www.w3.org/1999/xhtml">
- <p>An unsigned integer representing the time that the
- event occurred. On X Window systems this event is
- a time in milliseconds from some arbitrary starting
- point; it therefore has a cycle time of approximately
- 50 days.</p>
- </tp:docstring>
- </tp:member>
- <tp:member type="s" tp:name="event_string">
- <tp:docstring xmlns="http://www.w3.org/1999/xhtml">
- <p>A string representation of the event. If is_text is
- <code>True</code>, then this string represents the character or typographic
- sequence that would be received by a focussed text input field.
- event_string is in general suitable for exposure to the
- end-user for purposes of keyboard echo.</p>
- </tp:docstring>
- </tp:member>
- <tp:member type="b" tp:name="is_text">
- <tp:docstring xmlns="http://www.w3.org/1999/xhtml">
- <p><code>True</code> if the event results in the insertion of characters
- into an input text buffer, or would do so if delivered to a focussed
- text input field. 'Typographical' key events have this field set to
- <code>True</code>, whereas 'control' key events generally do not.</p>
- </tp:docstring>
- </tp:member>