unixdev.net


Switch to SpeakEasy.net DSL

The Modular Manual Browser

Home Page
Manual: (Debian-5.0)
Page:
Section:
Apropos / Subsearch:
optional field

XkbGetBounceKeysDelay(3)         XKB FUNCTIONS        XkbGetBounceKeysDelay(3)



NAME
       XkbGetBounceKeysDelay - Queries the current BounceKeys delay for a key-
       board device.

SYNOPSIS
       Bool XkbGetBounceKeysDelay ( 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 bounce keys delay, ms

DESCRIPTION
       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.


       c s l l l lw(4i).  Table 1 AccessXNotify Events  _  detail    Reason  _
       XkbAXN_SKPress T{  A  key  was  pressed  when SlowKeys was enabled.  T}
       XkbAXN_SKAccept     T{  A  key  was  accepted  (held  longer  than  the
       SlowKeys  delay).   T}  XkbAXN_SKRelease    T{ An accepted SlowKeys key
       was released.  T} XkbAXN_SKReject     T{ A key was  rejected  (released
       before  the  SlowKeys  delay expired).  T} XkbAXN_BKAccept     T{ A key
       was accepted  by  BounceKeys.   T}  XkbAXN_BKReject     T{  A  key  was
       rejected (pressed before the BounceKeys delay expired).  T} XkbAXN_AXK-
       Warning   T{  AccessXKeys  is  about  to  turn  on/off  StickyKeys   or
       BounceKeys.  T}


       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 XkbAccesXNotifyMask 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  val-
       ues_for_bits using mask bits from Table 2.


       c s s l l l l l lw(3i).  Table 2 AccessXNotify Event Details  _  XkbAc-
       cessXNotify  Event  Details  Value     Circumstances  _ XkbAXN_SKPress-
       Mask  (1<<0)    T{ Slow key press notification wanted  T}  XkbAXN_SKAc-
       ceptMask (1<<1)    T{   Slow   key   accept   notification   wanted  T}
       XkbAXN_SKRejectMask (1<<2)    T{ Slow key reject notification wanted T}
       XkbAXN_SKReleaseMask     (1<<3)    T{  Slow  key  release  notification
       wanted T} XkbAXN_BKAcceptMask (1<<4)    T{ Bounce key accept  notifica-
       tion wanted T} XkbAXN_BKRejectMask (1<<5)    T{ Bounce key reject noti-
       fication wanted T} XkbAXN_AXKWarningMask    (1<<6)    T{ AccessX  warn-
       ing  notification  wanted  T} XkbAXN_AllEventsMask     (0x7f)    T{ All
       AccessX features notifications wanted T}

       Some users may accidentally "bounce" on a key  when  they  release  it.
       They press it once, then accidentally press it again after they release
       it. The BounceKeys control temporarily disables a key after it has been
       pressed,  effectively "debouncing" the keyboard. The period of time the
       key is disabled after it is released is known as the BounceKeys  delay.
       BounceKeys is a boolean control.

       When the BounceKeys control is active, the server reports acceptance or
       rejection of any key to interested clients by  sending  an  appropriate
       AccessXNotify event (see STRUCTURES).

       XkbGetBounceKeysDelay requests the attributes of the BounceKeys control
       from the server, waits for a reply, and backfills delay_rtrn  with  the
       BounceKeys delay attribute.  XkbGetBounceKeysDelay returns True if suc-
       cessful; if a compatible version of the Xkb extension is not  available
       in the server XkbGetSlowKeysDelay returns False.

RETURN VALUES
       True           The  XkbGetBounceKeysDelay function returns True when it
                      successfully requests the attributes of  the  BounceKeys
                      control  from  the  server, waits for a reply, and back-
                      fills delay_rtrn with the BounceKeys delay attribute.

       False          The XkbGetBounceKeysDelay 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;


SEE ALSO
       XkbGetSlowKeysDelay(3)




X Version 11                     libX11 1.1.5         XkbGetBounceKeysDelay(3)