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

NAME

6       XkbGetKeyExplicitComponents  -  Obtain  the  explicit  components  (the
7       explicit 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
17              keycode of first key to fetch
18
19       - num  number of keys for which to get explicit info
20
21       - xkb  Xkb description in which to put results
22

DESCRIPTION

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

DIAGNOSTICS

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