Home Man
Search
Today's Posts
Register

Linux & Unix Commands - Search Man Pages

X11R7.4 - man page for xallowdeviceevents (x11r4 section 3)

XAllowDeviceEvents(3)			   X FUNCTIONS			    XAllowDeviceEvents(3)

NAME
       XAllowDeviceEvents - release queued events

SYNTAX
       int XAllowDeviceEvents(Display *display, XDevice *device, int event_mode, Time time);

ARGUMENTS
       display	   Specifies the connection to the X server.

       device	   Specifies the device from which events are to be allowed.

       event_mode  Specifies  the  event  mode.   You  can  pass AsyncThisDevice, SyncThisDevice,
		   ReplayThisDevice, AsyncOtherDevices, SyncAll, or AsyncAll.

       time	   Specifies the time.	You can pass either a timestamp or CurrentTime.

DESCRIPTION
       The XAllowDeviceEvents function releases some queued events if the  client  has	caused	a
       device  to  freeze.   It has no effect if the specified time is earlier than the last-grab
       time of the most recent active grab for the client and device, or if the specified time is
       later than the current X server time.

       The  following describes the processing that occurs depending on what constant you pass to
       the event_mode argument.

       AsyncThisDevice
		   If the specified device is frozen by the client,  event  processing	for  that
		   device  continues  as  usual.   If  the device is frozen multiple times by the
		   client on behalf of multiple separate grabs, AsyncThisDevice  thaws	for  all.
		   AsyncThisDevice  has  no  effect  if the specified device is not frozen by the
		   client, but the device need not be grabbed by the client.

       SyncThisDevice
		   If the specified device is frozen and actively grabbed by  the  client,  event
		   processing  for  that  device  continues normally until the next key or button
		   event is reported to the client.  At this time,  the  specified  device  again
		   appears  to	freeze.   However,  if	the  reported event causes the grab to be
		   released, the specified device does not freeze.  SyncThisDevice has no  effect
		   if  the  specified device is not frozen by the client or is not grabbed by the
		   client.

       ReplayThisDevice
		   If the specified device is actively grabbed by the client and is frozen as the
		   result  of an event having been sent to the client (either from the activation
		   of a GrabDeviceButton or from a previous AllowDeviceEvents with mode SyncThis-
		   Device,  but  not  from  a GrabDevice), the grab is released and that event is
		   completely reprocessed.  This time, however, the request ignores  any  passive
		   grabs  at  or  above  (toward  the root) that the grab-window of the grab just
		   released.  The request has no effect if the specified device is not grabbed by
		   the client or if it is not frozen as the result of an event.

       AsyncOtherDevices
		   If  the  remaining devices are frozen by the client, event processing for them
		   continues as usual.	If the other devices are frozen  multiple  times  by  the
		   client  on behalf of multiple grabs, AsyncOtherDevices "thaws" for all.  Asyn-
		   cOtherDevices has no effect if the devices are not frozen by the client.

       SyncAll	   If all devices are frozen by the client, event processing  (for  all  devices)
		   continues  normally	until  the  next  button  or key event is reported to the
		   client for a grabbed device, at which time all devices again appear to freeze.
		   However,  if  the  reported	event  causes  the  grab to be released, then the
		   devices do not freeze.  If any device is  still  grabbed,  then  a  subsequent
		   event  for  it  will still cause all devices to freeze.  SyncAll has no effect
		   unless all devices are frozen by the client.  If any device is frozen twice by
		   the	client on behalf of two separate grabs, SyncAll thaws for both.  A subse-
		   quent freeze for SyncAll will only freeze each device once.

       AsyncAll    If all devices are frozen by the client, event processing for all devices con-
		   tinues  normally.   If  any	device	is frozen multiple times by the client on
		   behalf of multiple separate grabs, AsyncAll thaws for all.	AsyncAll  has  no
		   effect unless all devices are frozen by the client.

       AsyncThisDevice,  SyncThisDevice, and ReplayThisDevice have no effect on the processing of
       events from the remaining devices.  AsyncOtherDevices has no effect on the  processing  of
       events  from the specified device.  When the event_mode is SyncAll or AsyncAll, the device
       parameter is ignored.

       It is possible for several grabs of different devices by the same or different clients  to
       be  active simultaneously.  If a device is frozen on behalf of any grab, no event process-
       ing is performed for the device.  It is possible for a single device to be frozen  because
       of several grabs.  In this case, the freeze must be released on behalf of each grab before
       events can again be processed.

       XAllowDeviceEvents can generate a BadDevice or BadValue error.

DIAGNOSTICS
       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.

       BadValue    An invalid mode was specified on the request.

SEE ALSO
       XGrabDevice(3)
       Programming With Xlib

X Version 11				   libXi 1.2.1			    XAllowDeviceEvents(3)


All times are GMT -4. The time now is 09:08 AM.

Unix & Linux Forums Content Copyrightę1993-2018. All Rights Reserved.
UNIX.COM Login
Username:
Password:  
Show Password