This manual page is for Mac OS X version 10.6.3

If you are running a different version of Mac OS X, view the documentation locally:

  • In Terminal, using the man(1) command

Reading manual pages

Manual pages are intended as a quick reference for people who already understand a technology.

  • For more information about the manual page format, see the manual page for manpages(5).

  • For more information about this technology, look for other documentation in the Apple Reference Library.

  • For general information about writing shell scripts, read Shell Scripting Primer.



XkbSetAccessXTimeout(3)                         XKB FUNCTIONS                        XkbSetAccessXTimeout(3)



NAME
       XkbSetAccessXTimeout - Configures the AccessXTimeout options for a keyboard device

SYNOPSIS
       Bool  XkbSetAccessXTimeout  (  display,  device_spec,  timeout,  ctrls_mask, ctrls_values, opts_mask,
       opts_values )
             Display * display ;
             unsigned int  device_spec ;
             unsigned short  timeout ;
             unsigned int  ctrls_mask ;
             unsigned int  ctrls_values ;
             unsigned short  opts_mask ;
             unsigned short  opts_values ;

ARGUMENTS
       - display
              connection to X server

       - device_spec
              device to configure, or XkbUseCoreKbd

       - timeout
              seconds idle until AccessXTimeout occurs

       - ctrls_mask
              boolean controls to modify

       - ctrls_values
              new bits for controls selected by ctrls_mask

       - opts_mask
              ax_options to change

       - opts_values
              new bits for ax_options selected by opts_mask

DESCRIPTION
       In environments where computers are shared, features such as SlowKeys present a problem: if  SlowKeys
       is  on,  the keyboard can appear to be unresponsive because keys are not accepted until they are held
       for a certain period of time. To help solve this problem, Xkb provides an AccessXTimeout  control  to
       automatically  change  the  enabled/disabled state of any boolean controls and to change the value of
       the AccessXKeys and AccessXFeedback control attributes if the keyboard is idle for a specified period
       of time.

       When a timeout as specified by AccessXTimeout occurs and a control is consequently modified, Xkb gen-erates generates
       erates an XkbControlsNotify event. For more information on XkbControlsNotify events.

       timeout specifies the number of seconds the keyboard must be idle before the controls  are  modified.
       ctrls_mask  specifies what controls are to be enabled or disabled, and ctrls_values specifies whether
       those controls are to be enabled or disabled. The bit values correspond to  those  for  enabling  and
       disabling boolean controls using XkbChangeEnabledControls.
        The  opts_mask  field specifies which attributes of the AccessXKeys and AccessXFeedback controls are
       to be changed, and opts_values specifies the new values for those options. The bit values  correspond
       to those for the ax_options field of an XkbDescRec.

       XkbSetAccessXTimeout  sends  a request to configure the AccessXTimeout control to the server. It does
       not wait for a reply, and normally returns True. If a compatible version of the Xkb extension is  not
       available in the server, XkbSetAccessXTimeout returns False.

RETURN VALUES
       True           The  XkbSetAccessXTimeout  function  returns True when a compatible version of the Xkb
                      extension is available in the server.

       False          The XkbSetAccessXTimeout function returns False when a compatible version of  the  Xkb
                      extension is not available in the server.

STRUCTURES
       The  complete  description  of an Xkb keyboard is given by an XkbDescRec. The component structures in
       the XkbDescRec represent the major Xkb components.

       typedef struct {
          struct _XDisplay * display;      /* connection to X server */
          unsigned short     flags;        /* private to Xkb, do not modify */
          unsigned short     device_spec;  /* device of interest */
          KeyCode            min_key_code; /* minimum keycode for device */
          KeyCode            max_key_code; /* maximum keycode for device */
          XkbControlsPtr     ctrls;        /* controls */
          XkbServerMapPtr    server;       /* server keymap */
          XkbClientMapPtr    map;          /* client keymap */
          XkbIndicatorPtr    indicators;   /* indicator map */
          XkbNamesPtr        names;        /* names for all components */
          XkbCompatMapPtr    compat;       /* compatibility map */
          XkbGeometryPtr     geom;         /* physical geometry of keyboard */
       } XkbDescRec, *XkbDescPtr;

       The display field points to an X display structure. The flags field is private to the library:  modi-fying modifying
       fying flags may yield unpredictable results. The device_spec field specifies the device identifier of
       the keyboard input device, or XkbUseCoreKeyboard, which  specifies  the  core  keyboard  device.  The
       min_key_code  and  max_key_code fields specify the least and greatest keycode that can be returned by
       the keyboard.

       Each structure component has a corresponding mask bit that is used in function calls to indicate that
       the  structure should be manipulated in some manner, such as allocating it or freeing it. These masks
       and their relationships to the fields in the XkbDescRec are shown in Table 1.


               Table 1 Mask Bits for XkbDescRec
       --------------------------------------------------Mask -------------------------------------------------Mask
       Mask Bit               XkbDescRec Field   Value
       --------------------------------------------------XkbControlsMask -------------------------------------------------XkbControlsMask
       XkbControlsMask        ctrls              (1L<<0)
       XkbServerMapMask       server             (1L<<1)
       XkbIClientMapMask      map                (1L<<2)
       XkbIndicatorMapMask    indicators         (1L<<3)
       XkbNamesMask           names              (1L<<4)
       XkbCompatMapMask       compat             (1L<<5)
       XkbGeometryMask        geom               (1L<<6)
       XkbAllComponentsMask   All Fields         (0x7f)

       The structure for the XkbControlsNotify event is defined as follows:

           typedef struct {
               int           type;          /* Xkb extension base event code */
               unsigned long serial;        /* X server serial number for event */
               Bool          send_event;    /* True => synthetically generated */
               Display *     display;       /* server connection where event generated */
               Time          time;          /* server time when event generated */
               int           xkb_type;      /* XkbCompatMapNotify */
               int           device;        /* Xkb device ID, will not be XkbUseCoreKbd */
               unsigned int  changed_ctrls; /* bits indicating which controls data have changed*/
               unsigned int  enabled_ctrls; /* controls currently enabled in server */
               unsigned int  enabled_ctrl_changes; /* bits indicating enabled/disabled controls */
               int           num_groups;    /* current number of keyboard groups */
               KeyCode       keycode;       /* != 0 => keycode of key causing change */
               char          event_type;    /* Type of event causing change */
               char          req_major;     /* major event code of event causing change */
               char          req_minor;     /* minor event code of event causing change */
           } XkbControlsNotifyEvent;


SEE ALSO
       XkbChangeEnabledControls(3)



X Version 11                                    libX11 1.2.1                         XkbSetAccessXTimeout(3)

Reporting Problems

The way to report a problem with this manual page depends on the type of problem:

Content errors
Report errors in the content of this documentation with the feedback links below.
Bug reports
Report bugs in the functionality of the described tool or API through Bug Reporter.
Formatting problems
Report formatting mistakes in the online version of these pages with the feedback links below.

Did this document help you? Yes It's good, but... Not helpful...