Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages


home | help

       XSendExtensionEvent - send input	extension events to a client

       #include	<X11/extensions/XInput.h>

       Status XSendExtensionEvent( Display *display,
				   XDevice *device,
				   Window destination,
				   Bool	propagate,
				   int event_count,
				   XEventClass *event_list,
				   XEvent *event_send);

	      Specifies	the connection to the X	server.

	      Specifies	the device from	which the events are to	be

	      Specifies	the window the event is	to be sent to. You can
	      pass window id, PointerWindow,or InputFocus.

	      Specifies	a Boolean value	that is	either True or False.

	      Specifies	the count of XEventClasses in event_list.

	      Specifies	the list of event selections to	be used.

	      Specifies	a pointer to the event that is to be sent.

	   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(3) 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

	   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.

	   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

	   XSendExtensionEventreturns zero if the conversion to	wire
	   protocol format failedand returns nonzero
	   otherwise.XSendExtensionEventcan generate BadClass, BadDevice,
	   BadValue, and BadWindow errors.

		  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.

		  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's type is accepted. Any argument defined as a
		  set of alternatives can generate this	error.

		  A value for a	Window argument	does not name a	defined

				  06/19/2019		XSENDEXTENSIONEVENT(3)


Want to link to this manual page? Use this URL:

home | help