'\" t .\" Title: xsendextensionevent .\" Author: [FIXME: author] [see http://docbook.sf.net/el/author] .\" Generator: DocBook XSL Stylesheets v1.77.1 .\" Date: 03/09/2013 .\" Manual: \ \& .\" Source: \ \& .\" Language: English .\" .TH "XSENDEXTENSIONEVENT" "libmansuffix" "03/09/2013" "\ \&" "\ \&" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .\" http://bugs.debian.org/507673 .\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- .\" disable hyphenation .nh .\" disable justification (adjust text to left margin only) .ad l .\" ----------------------------------------------------------------- .\" * MAIN CONTENT STARTS HERE * .\" ----------------------------------------------------------------- .SH "NAME" XSendExtensionEvent \- send input extension events to a client .SH "SYNOPSIS" .sp .nf #include .fi .sp .nf Status XSendExtensionEvent( Display *display, XDevice *device, Window destination, Bool propagate, int event_count, XEventClass *event_list, XEvent *event_send); .fi .sp .nf display Specifies the connection to the X server\&. .fi .sp .nf device Specifies the device from which the events are to be sent\&. .fi .sp .nf destination Specifies the window the event is to be sent to\&. You can pass window id, PointerWindow,or InputFocus\&. .fi .sp .nf propagate Specifies a Boolean value that is either True or False\&. .fi .sp .nf event_count Specifies the count of XEventClasses in event_list\&. .fi .sp .nf event_list Specifies the list of event selections to be used\&. .fi .sp .nf event_send Specifies a pointer to the event that is to be sent\&. .fi .SH "DESCRIPTION" .sp .if n \{\ .RS 4 .\} .nf The XSendExtensionEvent request identifies the destination window, determines which clients should receive the specified events, and ignores any active grabs\&. This request requires you to pass an event class list\&. For a discussion of the valid event class names, see XOpenDevice(libmansuffix) This request uses the w argument to identify the destination window as follows: * If w is PointerWindow,the destination window is the window that contains the pointer\&. * If w is InputFocusand if the focus window contains the pointer,the destination window is the window that contains the pointer; otherwise, the destination window is the focus window\&. .fi .if n \{\ .RE .\} .sp .if n \{\ .RS 4 .\} .nf To determine which clients should receive the specified events, XSendExtensionEventuses the propagate argument as follows: * If event_list is the empty set,the event is sent to the client that created the destination window\&. If that client no longer exists,no event is sent\&. * If propagate is False,the event is sent to every client selecting on destination any of the eventtypes specified by the event_list array\&. * If propagate is Trueand no clients have selected on destination any ofthe events specified by the event_list array,the destination is replaced with theclosest ancestor of destination for which some client has selected atype specified by the event\-list array and for which no interveningwindow has that type in itsdo\-not\-propagate\-mask\&. If no such window exists or if the window isan ancestor of the focus window and InputFocuswas originally specifiedas the destination, the event is not sent to any clients\&. Otherwise, the event is reported to every client selecting on the finaldestination any of the events specified in the event_list array\&. .fi .if n \{\ .RE .\} .sp .if n \{\ .RS 4 .\} .nf The event in the XEventstructure must be one of the events defined by the input extension (or a BadValueerror results) so that the X server can correctly byte\-swapthe contents as necessary\&. The contents of the event areotherwise unaltered and unchecked by the X server except to force send_event to Truein the forwarded event and to set the serial number in the event correctly\&. .fi .if n \{\ .RE .\} .sp .if n \{\ .RS 4 .\} .nf XSendExtensionEventreturns zero if the conversion to wire protocol format failedand returns nonzero otherwise\&.XSendExtensionEventcan generate BadClass, BadDevice, BadValue, and BadWindow errors\&. .fi .if n \{\ .RE .\} .SH "DIAGNOSTICS" .sp .if n \{\ .RS 4 .\} .nf BadDevice An invalid device was specified\&. The specified device does not exist or has not been opened by this client via XOpenInputDevice\&. This error may also occur if the specified device is the X keyboard or X pointer device\&. .fi .if n \{\ .RE .\} .sp .if n \{\ .RS 4 .\} .nf BadValue Some numeric value falls outside the range of values accepted by the request\&. Unless a specific range is specified for an argument, the full range defined by the argument\*(Aqs type is accepted\&. Any argument defined as a set of alternatives can generate this error\&. .fi .if n \{\ .RE .\} .sp .if n \{\ .RS 4 .\} .nf BadWindow A value for a Window argument does not name a defined window\&. .fi .if n \{\ .RE .\}