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

FreeBSD Manual Pages

  
 
  

home | help
xcb_allow_events(3)		 XCB Requests		   xcb_allow_events(3)

NAME
       xcb_allow_events	- release queued events

SYNOPSIS
       #include	<xcb/xproto.h>

   Request function

       xcb_void_cookie_t xcb_allow_events(xcb_connection_t *conn,
	      uint8_t mode, xcb_timestamp_t time);

REQUEST	ARGUMENTS
       conn	 The XCB connection to X11.

       mode	 One of	the following values:

		 XCB_ALLOW_ASYNC_POINTER
			   For	AsyncPointer,  if the pointer is frozen	by the
			   client, pointer event processing continues  normal-
			   ly. If the pointer is frozen	twice by the client on
			   behalf  of  two  separate grabs, AsyncPointer thaws
			   for both. AsyncPointer has no effect	if the pointer
			   is not frozen by the	client,	but the	 pointer  need
			   not be grabbed by the client.

			   TODO: rewrite this in more understandable terms.

		 XCB_ALLOW_SYNC_POINTER
			   For	SyncPointer,  if the pointer is	frozen and ac-
			   tively grabbed by the client,  pointer  event  pro-
			   cessing  continues  normally	until the next Button-
			   Press or ButtonRelease event	 is  reported  to  the
			   client,  at which time the pointer again appears to
			   freeze. However, if the reported event  causes  the
			   pointer  grab to be released, then the pointer does
			   not freeze. SyncPointer has no effect if the	point-
			   er is not frozen by the client or if	the pointer is
			   not grabbed by the client.

		 XCB_ALLOW_REPLAY_POINTER
			   For	ReplayPointer,	if  the	 pointer  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 GrabButton	or from	a pre-
			   vious AllowEvents with  mode	 SyncPointer  but  not
			   from	 a  GrabPointer), then the pointer grab	is re-
			   leased and that event  is  completely  reprocessed,
			   this	 time  ignoring	 any passive grabs at or above
			   (towards the	root) the grab-window of the grab just
			   released. The request has no	effect if the  pointer
			   is  not  grabbed by the client or if	the pointer is
			   not frozen as the result of an event.

		 XCB_ALLOW_ASYNC_KEYBOARD
			   For AsyncKeyboard, if the keyboard is frozen	by the
			   client, keyboard event processing continues normal-
			   ly. If the keyboard is frozen twice by  the	client
			   on  behalf  of  two	separate  grabs, AsyncKeyboard
			   thaws for both. AsyncKeyboard has no	effect if  the
			   keyboard  is	not frozen by the client, but the key-
			   board need not be grabbed by	the client.

		 XCB_ALLOW_SYNC_KEYBOARD
			   For SyncKeyboard, if	the keyboard is	frozen and ac-
			   tively grabbed by the client, keyboard  event  pro-
			   cessing  continues normally until the next KeyPress
			   or KeyRelease event is reported to the  client,  at
			   which  time	the  keyboard again appears to freeze.
			   However, if the reported event causes the  keyboard
			   grab	 to  be	 released,  then the keyboard does not
			   freeze. SyncKeyboard	has no effect if the  keyboard
			   is  not  frozen by the client or if the keyboard is
			   not grabbed by the client.

		 XCB_ALLOW_REPLAY_KEYBOARD
			   For ReplayKeyboard, if  the	keyboard  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 GrabKey or from a previous
			   AllowEvents	with  mode SyncKeyboard	but not	from a
			   GrabKeyboard), then the keyboard grab  is  released
			   and that event is completely	reprocessed, this time
			   ignoring any	passive	grabs at or above (towards the
			   root)  the  grab-window  of the grab	just released.
			   The request has no effect if	the  keyboard  is  not
			   grabbed  by	the  client  or	if the keyboard	is not
			   frozen as the result	of an event.

		 XCB_ALLOW_ASYNC_BOTH
			   For AsyncBoth, if the pointer and the keyboard  are
			   frozen by the client, event processing for both de-
			   vices  continues  normally.	If  a device is	frozen
			   twice by the	 client	 on  behalf  of	 two  separate
			   grabs,  AsyncBoth  thaws for	both. AsyncBoth	has no
			   effect unless both pointer and keyboard are	frozen
			   by the client.

		 XCB_ALLOW_SYNC_BOTH
			   For	SyncBoth,  if  both  pointer  and keyboard are
			   frozen by the client, event	processing  (for  both
			   devices)  continues normally	until the next Button-
			   Press, ButtonRelease, KeyPress, or KeyRelease event
			   is reported to the  client  for  a  grabbed	device
			   (button  event  for	the pointer, key event for the
			   keyboard), at which time the	devices	 again	appear
			   to  freeze.	However,  if the reported event	causes
			   the grab to be released, then the  devices  do  not
			   freeze  (but	 if the	other device is	still grabbed,
			   then	a subsequent event for	it  will  still	 cause
			   both	devices	to freeze). SyncBoth has no effect un-
			   less	 both  pointer	and keyboard are frozen	by the
			   client. If the pointer or keyboard is frozen	 twice
			   by  the  client  on	behalf	of two separate	grabs,
			   SyncBoth thaws for both (but	 a  subsequent	freeze
			   for SyncBoth	will only freeze each device once).

       time	 Timestamp  to	avoid  race conditions when running X over the
		 network.

		 The special value XCB_CURRENT_TIME will be replaced with  the
		 current server	time.

DESCRIPTION
       Releases	 queued	events if the client has caused	a device (pointer/key-
       board) to freeze	due to grabbing	it actively. This request has  no  ef-
       fect  if	time is	earlier	than the last-grab time	of the most recent ac-
       tive grab for this client or if time is later than the current X	server
       time.

RETURN VALUE
       Returns an xcb_void_cookie_t. Errors (if	any) have to be	handled	in the
       event loop.

       If you want to handle errors directly with  xcb_request_check  instead,
       use xcb_allow_events_checked. See xcb-requests(3) for details.

ERRORS
       xcb_value_error_t
		 You specified an invalid mode.

SEE ALSO
       xcb-requests(3)

AUTHOR
       Generated  from	xproto.xml. Contact xcb@lists.freedesktop.org for cor-
       rections	and improvements.

X Version 11			 libxcb	1.17.0		   xcb_allow_events(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=xcb_allow_events_checked&sektion=3&manpath=FreeBSD+Ports+14.3.quarterly>

home | help