1XkbGetKeyExplicitComponents(3)   XKB FUNCTION   XkbGetKeyExplicitComponents(3)
2
3
4

NAME

6       XkbGetKeyExplicitComponents  -  Obtain the explicit components (the ex‐
7       plicit array) for a subset of the keys in a keyboard description
8

SYNOPSIS

10       Status XkbGetKeyExplicitComponents (Display *dpy, unsigned  int  first,
11              unsigned int num, XkbDescPtr xkb);
12

ARGUMENTS

14       dpy    connection to server
15
16       first  keycode of first key to fetch
17
18       num    number of keys for which to get explicit info
19
20       xkb    Xkb description in which to put results
21

DESCRIPTION

23       Whenever a client remaps the keyboard using core protocol requests, Xkb
24       examines the map to determine likely default values for the  components
25       that  cannot  be  specified  using the core protocol (see Core Keyboard
26       Mapping to Xkb Keyboard Mapping Transformation for more information  on
27       how Xkb chooses the default values).
28
29       DO  THE  FOUR  PAGES  OF "CORE KEYBOARD MAPPING TO XKB KEYBOARD MAPPING
30       TRANSFORMATION" NEED TO BE ADDED HERE?
31
32       This automatic remapping might replace definitions explicitly requested
33       by  an application, so the Xkb keyboard description defines an explicit
34       components mask for each key. Any aspects of  the  automatic  remapping
35       listed in the explicit components mask for a key are not changed by the
36       automatic keyboard mapping.
37
38       The explicit components masks are held in the  explicit  field  of  the
39       server  map,  which  is an array indexed by keycode. Each entry in this
40       array is a mask that is a bitwise inclusive OR of the values  shown  in
41       Table 1.
42
43                      Table 1 Explicit Component Masks
44       ───────────────────────────────────────────────────────────────
45       Bit in Explicit Mask   Value    Protects Against
46       ───────────────────────────────────────────────────────────────
47       ExplicitKeyType1       (1<<0)   Automatic determination of the
48                                       key   type   associated   with
49                                       Group1.
50       ExplicitKeyType2       (1<<1)   Automatic determination of the
51                                       key   type   associated   with
52                                       Group2.
53       ExplicitKeyType3       (1<<2)   Automatic determination of the
54                                       key   type   associated   with
55                                       Group3.
56       ExplicitKeyType4       (1<<3)   Automatic determination of the
57                                       key   type   associated   with
58                                       Group4.
59       ExplicitInterpret      (1<<4)   Application   of  any  of  the
60                                       fields of a symbol interpreta‐
61                                       tion to the key in question.
62       ExplicitAutoRepeat     (1<<5)   Automatic   determination   of
63                                       auto-repeat  status  for   the
64                                       key,  as specified in a symbol
65                                       interpretation.
66
67       ExplicitBehavior       (1<<6)   Automatic  assignment  of  the
68                                       XkbKB_Lock   behavior  to  the
69                                       key, if  the  XkbSI_LockingKey
70                                       flag is set in a symbol inter‐
71                                       pretation.
72       ExplicitVModMap        (1<<7)   Automatic determination of the
73                                       virtual  modifier  map for the
74                                       key based on the  actions  as‐
75                                       signed to the key and the sym‐
76                                       bol interpretations that match
77                                       the key.
78
79       XkbGetKeyExplicitComponents sends a request to the server to obtain the
80       explicit components for num keys on  the  keyboard  starting  with  key
81       first.  It waits for a reply and returns the explicit components in the
82       server->explicit array of xkb.  If successful,  XkbGetKeyExplicitCompo‐
83       nents  returns  Success. The xkb parameter must be a pointer to a valid
84       Xkb keyboard description.
85
86       If the server map in the xkb parameter  has  not  been  allocated,  Xk‐
87       bGetKeyExplicitComponents allocates and initializes it before obtaining
88       the actions.
89
90       If the server does not have a compatible version of Xkb, or the Xkb ex‐
91       tension  has not been properly initialized, XkbGetKeyExplicitComponents
92       returns BadMatch. If num is less than 1 or greater than XkbMaxKeyCount,
93       XkbGetKeyExplicitComponents  returns BadValue. If any allocation errors
94       occur, XkbGetKeyExplicitComponents returns BadAlloc.
95

DIAGNOSTICS

97       BadAlloc       Unable to allocate storage
98
99       BadMatch       A compatible version of Xkb was  not  available  in  the
100                      server or an argument has correct type and range, but is
101                      otherwise invalid
102
103       BadValue       An argument is out of range
104
105
106
107X v11 Rel. 6.4                    20 Jul 1999   XkbGetKeyExplicitComponents(3)
Impressum