Provided by: libx11-doc_1.8.4-2_all bug

NAME

       XkbSetDebuggingFlags - Change the values of any of the debug controls

SYNOPSIS

       Bool  XkbSetDebuggingFlags  (Display *display, unsigned int mask, unsigned int flags, char
              *msg, unsigned  int  ctrls_mask,  unsigned  int  ctrls,  unsigned  int  *ret_flags,
              unsigned int *ret_ctrls);

ARGUMENTS

       display
              connection to X server

       mask   mask selecting debug output flags to change

       flags  values for debug output flags selected by mask

       msg    message to print right now

       ctrls_mask
              mask selecting debug controls to change

       ctrls  values for debug controls selected by ctrls_mask

       ret_flags
              resulting state of all debug output flags

       ret_ctrls
              resulting state of all debug controls

DESCRIPTION

       The  debugging aids are intended for use primarily by Xkb implementors and are optional in
       any implementation.

       There are two bitmasks that may be used to control debugging.  One  bitmask  controls  the
       output  of  debugging  information,  and  the  other controls behavior.  Both bitmasks are
       initially all zeros.

       To change the values of any of the debug controls, use XkbSetDebuggingFlags.

       XkbSetDebuggingFlags modifies the debug output flags  as  specified  by  mask  and  flags,
       modifies the debug controls flags as specified by ctrls_mask and ctrls, prints the message
       msg, and backfills ret_flags and ret_ctrls with  the  resulting  debug  output  and  debug
       controls flags.

       When  bits are set in the debug output masks, mask and flags, Xkb prints debug information
       corresponding to each bit at appropriate points during its processing. The device to which
       the  output  is  written  is  implementation-dependent, but is normally the same device to
       which X server error messages are directed; thus the bits that can  be  set  in  mask  and
       flags is implementation-specific. To turn on a debug output selection, set the bit for the
       output in the mask parameter and set the corresponding bit in the flags parameter. To turn
       off  event selection for an event, set the bit for the output in the mask parameter and do
       not set the corresponding bit in the flags parameter.

       When bits are set in the debug controls masks, ctrls_mask  and  ctrls,  Xkb  modifies  its
       behavior according to each controls bit.  ctrls_mask and ctrls are related in the same way
       that mask and flags are. The valid controls bits are defined in Table 1.

                           Table 1 Debug Control Masks
       ────────────────────────────────────────────────────────────────────

       Debug Control Mask   Value      Meaning
       ────────────────────────────────────────────────────────────────────
       XkbDF_DisableLocks   (1 << 0)   Disable actions that lock modifiers

       XkbSetDebuggingFlags returns True if successful and False  otherwise.  The  only  protocol
       error it may generate is BadAlloc, if for some reason it is unable to allocate storage.

       XkbSetDebuggingFlags  is  intended  for  developer use and may be disabled in production X
       servers. If it is disabled, XkbSetDebuggingFlags has no effect and does not  generate  any
       protocol errors.

       The  message  in  msg  is  written  immediately.  The  device  to  which  it is written is
       implementation dependent but is normally the same device where X server error messages are
       directed.

RETURN VALUES

       True           The XkbSetDebuggingFlags function returns True when successful.

       False          The XkbSetDebuggingFlags function returns False when not successful.

DIAGNOSTICS

       BadAlloc       Unable to allocate storage