home *** CD-ROM | disk | FTP | other *** search
-
-
-
- XAllowDeviceEvents(3X11) X FUNCTIONS XAllowDeviceEvents(3X11)
-
-
- NNAAMMEE
- XAllowDeviceEvents - release queued events
-
- SSYYNNTTAAXX
- XAllowDeviceEvents(_d_i_s_p_l_a_y, _d_e_v_i_c_e, _e_v_e_n_t___m_o_d_e, _t_i_m_e)
- Display *_d_i_s_p_l_a_y;
- XDevice *_d_e_v_i_c_e;
- int _e_v_e_n_t___m_o_d_e;
- Time _t_i_m_e;
-
- AARRGGUUMMEENNTTSS
- _d_i_s_p_l_a_y Specifies the connection to the X server.
-
- _d_e_v_i_c_e Specifies the device from which events are to
- be allowed.
-
- _e_v_e_n_t___m_o_d_e Specifies the event mode. You can pass _A_s_y_n_c_-
- _T_h_i_s_D_e_v_i_c_e, _S_y_n_c_T_h_i_s_D_e_v_i_c_e, _R_e_p_l_a_y_T_h_i_s_D_e_v_i_c_e,
- _A_s_y_n_c_O_t_h_e_r_D_e_v_i_c_e_s, _S_y_n_c_A_l_l, or _A_s_y_n_c_A_l_l.
-
- _t_i_m_e Specifies the time. You can pass either a
- timestamp or _C_u_r_r_e_n_t_T_i_m_e.
-
- DDEESSCCRRIIPPTTIIOONN
- The _X_A_l_l_o_w_D_e_v_i_c_e_E_v_e_n_t_s 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 depend-
- ing on what constant you pass to the event_mode argument.
-
- _A_s_y_n_c_T_h_i_s_D_e_v_i_c_e
- If the specified device is frozen by the
- client, event processing for that device con-
- tinues as usual. If the device is frozen mul-
- tiple times by the client on behalf of multi-
- ple separate grabs, _A_s_y_n_c_T_h_i_s_D_e_v_i_c_e thaws for
- all. _A_s_y_n_c_T_h_i_s_D_e_v_i_c_e has no effect if the
- specified device is not frozen by the client,
- but the device need not be grabbed by the
- client.
-
- _S_y_n_c_T_h_i_s_D_e_v_i_c_e
- 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.
-
-
-
- X Version 11 Release 6.1 1
-
-
-
-
-
- XAllowDeviceEvents(3X11) X FUNCTIONS XAllowDeviceEvents(3X11)
-
-
- _S_y_n_c_T_h_i_s_D_e_v_i_c_e has no effect if the specified
- device is not frozen by the client or is not
- grabbed by the client.
-
- _R_e_p_l_a_y_T_h_i_s_D_e_v_i_c_e
- 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
- SyncThisDevice, but not from a GrabDevice),
- the grab is released and that event is com-
- pletely 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.
-
- _A_s_y_n_c_O_t_h_e_r_D_e_v_i_c_e_s
- If the remaining devices are frozen by the
- client, event processing for them continues as
- usual. If the other devices are frozen multi-
- ple times by the client on behalf of multiple
- grabs, _A_s_y_n_c_O_t_h_e_r_D_e_v_i_c_e_s "thaws" for all.
- _A_s_y_n_c_O_t_h_e_r_D_e_v_i_c_e_s has no effect if the devices
- are not frozen by the client.
-
- _S_y_n_c_A_l_l If all devices are frozen by the client, event
- processing (for all devices) continues nor-
- mally 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. _S_y_n_c_A_l_l 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, _S_y_n_-
- _c_A_l_l thaws for both. A subsequent freeze for
- _S_y_n_c_A_l_l will only freeze each device once.
-
- _A_s_y_n_c_A_l_l If all devices are frozen by the client, event
- processing for all devices continues normally.
- If any device is frozen multiple times by the
- client on behalf of multiple separate grabs,
- _A_s_y_n_c_A_l_l thaws for all. _A_s_y_n_c_A_l_l has no
- effect unless all devices are frozen by the
- client.
-
- _A_s_y_n_c_T_h_i_s_D_e_v_i_c_e, _S_y_n_c_T_h_i_s_D_e_v_i_c_e, and _R_e_p_l_a_y_T_h_i_s_D_e_v_i_c_e have
-
-
-
- X Version 11 Release 6.1 2
-
-
-
-
-
- XAllowDeviceEvents(3X11) X FUNCTIONS XAllowDeviceEvents(3X11)
-
-
- no effect on the processing of events from the remaining
- devices. _A_s_y_n_c_O_t_h_e_r_D_e_v_i_c_e_s has no effect on the process-
- ing of events from the specified device. When the
- event_mode is _S_y_n_c_A_l_l or _A_s_y_n_c_A_l_l, 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 pro-
- cessing 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.
-
- _X_A_l_l_o_w_D_e_v_i_c_e_E_v_e_n_t_s can generate a _B_a_d_D_e_v_i_c_e or _B_a_d_V_a_l_u_e
- error.
-
- DDIIAAGGNNOOSSTTIICCSS
- _B_a_d_D_e_v_i_c_e An invalid device was specified. The speci-
- fied device does not exist or has not been
- opened by this client via _X_O_p_e_n_I_n_p_u_t_D_e_v_i_c_e.
- This error may also occur if the specified
- device is the X keyboard or X pointer device.
-
- _B_a_d_V_a_l_u_e An invalid mode was specified on the request.
-
- SSEEEE AALLSSOO
- XGrabDevice(3X11)
- _P_r_o_g_r_a_m_m_i_n_g _W_i_t_h _X_l_i_b
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- X Version 11 Release 6.1 3
-
-
-