diff options
Diffstat (limited to 'man/XSelectExtensionEvent.txt')
-rw-r--r-- | man/XSelectExtensionEvent.txt | 123 |
1 files changed, 123 insertions, 0 deletions
diff --git a/man/XSelectExtensionEvent.txt b/man/XSelectExtensionEvent.txt new file mode 100644 index 0000000..a31ca40 --- /dev/null +++ b/man/XSelectExtensionEvent.txt @@ -0,0 +1,123 @@ +XSELECTEXTENSIONEVENT(libmansuffix) +=================================== + +NAME +---- + + XSelectExtensionEvent, XGetSelectedExtensionEvents - select + extension events, get the list of currently selected extension + events + +SYNOPSIS +-------- + + #include <X11/extensions/XInput.h> + + XSelectExtensionEvent( Display *display, + Window w, + XEventClass *event_list, + int event_count); + + XGetSelectedExtensionEvents( Display *display, + Window w, + int this_client_event_count_return, + XEventClass *this_client_event_list_return, + int all_clients_event_count_return, + XEventClass *all_clients_event_list_return); + + display + Specifies the connection to the X server. + + w + Specifies the window whose events you are interested in. + + event_list + Specifies the list of event classes that describe the + events you are interested in. + + event_count + Specifies the count of event classes in the event list. + + this_client_event_count_return + Returns the count of event classes selected by this + client. + + this_client_event_list_return + Returns a pointer to the list of event classes selected + by this client. + + all_clients_event_count_return + Returns the count of event classes selected by all + clients. + + all_clients_event_list_return + Returns a pointer to the list of event classes selected + by all clients. + +DESCRIPTION +----------- + + The XSelectExtensionEvent request causes the X server to report + the events associated with the specified list of event classes. + Initially, X will not report any of these events. Events are + reported relative to a window. If a window is not interested in + a device event, it usually propagates to the closest ancestor + that is interested, unless the do_not_propagate mask prohibits + it. + + Multiple clients can select for the same events on the same + window with the following restrictions: + * Multiple clients can select events on the same window + because their event masks are disjoint. When the X server + generates an event, it reports it to all interested + clients. + * Only one client at a time can select a DeviceButtonPress + event with automatic passive grabbing enabled, which is + associated with the event class DeviceButtonPressGrab. To + receive DeviceButtonPress events without automatic passive + grabbing, use event class DeviceButtonPress but do not + specify event class DeviceButtonPressGrab. + + The server reports the event to all interested clients. + + Information contained in the XDevice structure returned by + XOpenDevice is used by macros to obtain the event classes that + clients use in making XSelectExtensionEvent requests. Currently + defined macros include DeviceKeyPress, DeviceKeyRelease, + DeviceButtonPress, DeviceButtonRelese, DeviceMotionNotify, + DeviceFocusIn, DeviceFocusOut, ProximityIn, ProximityOut, + DeviceStateNotify, DeviceMappiingNotify, ChangeDeviceNotify, + DevicePointerMotionHint, DeviceButton1Motion, + DeviceButton2Motion, DeviceButton3Motion, DeviceButton4Motion, + DeviceButton5Motion, DeviceButtonMotion, DeviceOwnerGrabButton, + DeviceButtonPressGrab, and NoExtensionEvent. + + To obtain the proper event class for a particular device, one + of the above macros is invoked using the XDevice structure for + that device. For example, + DeviceKeyPress (*device, type, eventclass); + + returns the DeviceKeyPress event type and the eventclass for + selecting DeviceKeyPress events from this device. + + XSelectExtensionEvent can generate a BadWindow or BadClass + error. The XGetSelectedExtensionEvents request reports the + extension events selected by this client and all clients for + the specified window. This request returns pointers to two + XEventClass arrays. One lists the input extension events + selected by this client from the specified window. The other + lists the event classes selected by all clients from the + specified window. You should use XFree to free these two + arrays. + + XGetSelectedExtensionEvents can generate a BadWindow error. + +DIAGNOSTICS +----------- + + BadWindow + A value for a Window argument does not name a defined + window. + + BadClass + A value for an XEventClass is invalid. |