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.



XkbGetSlowKeysDelay(3)                          XKB FUNCTIONS                         XkbGetSlowKeysDelay(3)



NAME
       XkbGetSlowKeysDelay - Gets the SlowKeys acceptance delay for a keyboard device

SYNOPSIS
       Bool XkbGetSlowKeysDelay ( display, device_spec, delay_rtrn )
             Display *display;
             unsigned int device_spec;
             unsigned int *delay_rtrn ;

ARGUMENTS
       - display
              connection to X server

       - device_spec
              device ID, or XkbUseCoreKbd

       - delay_rtrn
              backfilled with SlowKeys delay, ms

DESCRIPTION
       Some  users  may accidentally bump keys while moving a hand or typing stick toward the key they want.
       Usually, the keys that are accidentally bumped are just hit for a very  short  period  of  time.  The
       SlowKeys  control  helps  filter  these  accidental  bumps  by telling the server to wait a specified
       period, called the SlowKeys acceptance delay, before delivering key events. If the  key  is  released
       before  this  period  elapses, no key events are generated. Users can then bump any number of keys on
       their way to the one they want without accidentally getting those characters. Once they have  reached
       the  key  they  want,  they  can then hold the desired key long enough for the computer to accept it.
       SlowKeys is a boolean control with one configurable attribute.

       When the SlowKeys control is active, the server reports the initial key press, subsequent  acceptance
       or  rejection,  and  release of any key to interested clients by sending an appropriate AccessXNotify
       event (see section 10.6.4).

       The server can generate XkbAccessXNotify events for some of the global keyboard controls.  The detail
       field describes what AccessX event just occurred and can be any of the values in Table 1.  The server
       can generate XkbAccessXNotify events for some of the global  keyboard  controls.   The  detail  field
       describes what AccessX event just occurred and can be any of the values in Table 1.


                       Table 1 AccessXNotify Events
       -------------------------------------------------------------detail ------------------------------------------------------------detail
       detail              Reason
       -------------------------------------------------------------XkbAXN_SKPress ------------------------------------------------------------XkbAXN_SKPress
       XkbAXN_SKPress      A  key  was  pressed  when  SlowKeys was
                           enabled.
       XkbAXN_SKAccept     A key was accepted (held longer than the
                           SlowKeys delay).
       XkbAXN_SKRelease    An accepted SlowKeys key was released.
       XkbAXN_SKReject     A  key was rejected (released before the
                           SlowKeys delay expired).
       XkbAXN_BKAccept     A key was accepted by BounceKeys.
       XkbAXN_BKReject     A key was rejected (pressed  before  the
                           BounceKeys delay expired).
       XkbAXN_AXKWarning   AccessXKeys  is  about  to  turn  on/off
                           StickyKeys or BounceKeys.


       The keycode field reports the keycode of the key for which the  event  occurred.  If  the  action  is
       related  to  SlowKeys, the slowKeysDelay field contains the current SlowKeys acceptance delay. If the
       action is related to BounceKeys, the debounceDelay field contains  the  current  BounceKeys  debounce
       delay.

       Selecting for AccessX Events

       To receive XkbAccessXNotify events under all possible conditions, use XkbSelectEvents and pass XkbAc-cesXNotifyMask XkbAccesXNotifyMask
       cesXNotifyMask in both bits_to_change and values_for_bits.

       To receive XkbStateNotify events only  under  certain  conditions,  use  XkbSelectEventDetails  using
       XkbAccessXNotify  as  the  event_type  and specifying the desired state changes in bits_to_change and
       values_for_bits using mask bits from Table 2.


                         Table 2 AccessXNotify Event Details
       -------------------------------------------------------------------------XkbAccessXNotify ------------------------------------------------------------------------XkbAccessXNotify
       XkbAccessXNotify Event Details   Value    Circumstances
       -------------------------------------------------------------------------XkbAXN_SKPressMask ------------------------------------------------------------------------XkbAXN_SKPressMask
       XkbAXN_SKPressMask               (1<<0)   Slow  key  press  notification
                                                 wanted
       XkbAXN_SKAcceptMask              (1<<1)   Slow  key  accept notification
                                                 wanted
       XkbAXN_SKRejectMask              (1<<2)   Slow key  reject  notification
                                                 wanted
       XkbAXN_SKReleaseMask             (1<<3)   Slow  key release notification
                                                 wanted
       XkbAXN_BKAcceptMask              (1<<4)   Bounce key accept notification
                                                 wanted
       XkbAXN_BKRejectMask              (1<<5)   Bounce key reject notification
                                                 wanted
       XkbAXN_AXKWarningMask            (1<<6)   AccessX  warning  notification
                                                 wanted
       XkbAXN_AllEventsMask             (0x7f)   All AccessX features notifica-
                                                 tions wanted

       XkbGetSlowKeysDelay requests the attributes of the SlowKeys control from  the  server,  waits  for  a
       reply  and  backfills delay_rtrn with the SlowKeys delay attribute.  XkbGetSlowKeysDelay returns True
       if successful; , XkbGetSlowKeysDelay returns False.

RETURN VALUES
       True           The XkbGetSlowKeysDelay function returns True if the request of the  Slowkeys  control
                      from the server was successful.

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

STRUCTURES
       The structure for the XkbAccessXNotify event type is 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;       /* XkbAccessXNotify */
           int            device;         /* Xkb device ID, will not be XkbUseCoreKbd
       */
           int            detail;         /* XkbAXN_* */
           KeyCode        keycode;        /* key of event */
           int            slowKeysDelay;  /* current SlowKeys delay */
           int            debounceDelay;  /* current debounce delay */
       } XkbAccessXNotifyEvent;





X Version 11                                    libX11 1.2.1                          XkbGetSlowKeysDelay(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...