1XkbSetIndicatorMap(3)            XKB FUNCTIONS           XkbSetIndicatorMap(3)
2
3
4

NAME

6       XkbSetIndicatorMap - Downloads the changes to the server based on modi‐
7       fications to a local copy of the keyboard description which will update
8       the maps for one or more indicators
9

SYNOPSIS

11       Bool  XkbSetIndicatorMap  (Display *dpy, unsigned int which, XkbDescPtr
12              desc);
13

ARGUMENTS

15       - dpy  connection to the X server
16
17       - which
18              mask of indicators to change
19
20       - desc keyboard description from which the maps are taken
21

DESCRIPTION

23       This section discusses the effects of  explicitly  changing  indicators
24       depending  upon  different  settings in the indicator map. See Tables 1
25       and Table 2 for information on the effects of the indicator map  fields
26       when explicit changes are made.
27
28
29            Table 1 XkbIndicatorMapRec which_groups and groups,
30                          Indicator Drives Keyboard
31       ────────────────────────────────────────────────────────────────
32       which_groups         New State   Effect on Keyboard Group State
33       ────────────────────────────────────────────────────────────────
34       XkbIM_UseNone        On or Off   No effect
35       XkbIM_UseBase        On or Off   No effect
36       XkbIM_UseLatched     On          The groups field is treated as
37                                        a  group  mask.  The  keyboard
38                                        group  latch is changed to the
39                                        lowest numbered  group  speci‐
40                                        fied  in  groups; if groups is
41                                        empty,  the   keyboard   group
42                                        latch is changed to zero.
43       XkbIM_UseLatched     Off         The groups field is treated as
44                                        a group mask. If the indicator
45                                        is   explicitly  extinguished,
46                                        keyboard   group   latch    is
47                                        changed to the lowest numbered
48                                        group not specified in groups;
49                                        if  groups  is  zero, the key‐
50                                        board group latch  is  set  to
51                                        the index of the highest legal
52                                        keyboard group.
53       XkbIM_UseLocked or
54       XkbIM_UseEffective   On          If the groups mask  is  empty,
55                                        group  is  not changed; other‐
56                                        wise,  the   locked   keyboard
57                                        group is changed to the lowest
58                                        numbered  group  specified  in
59                                        groups.
60       XkbIM_UseLocked or
61
62
63
64
65
66
67       XkbIM_UseEffective   Off         Locked   keyboard   group   is
68                                        changed to the lowest numbered
69                                        group that is not specified in
70                                        the groups mask, or to  Group1
71                                        if  the  groups  mask contains
72                                        all keyboard groups.
73
74
75
76                                 Table 2 XkbIndicatorMapRec which_mods and mods,
77                                            Indicator Drives Keyboard
78       ─────────────────────────────────────────────────────────────────────────────────────────────────────
79       which_mods                                                New State   Effect on Keyboard Modifiers
80       ─────────────────────────────────────────────────────────────────────────────────────────────────────
81       XkbIM_UseNone or XkbIM_UseBase                            On or Off   No Effect
82       XkbIM_UseLatched                                          On          Any modifiers specified in the
83                                                                             mask  field  of mods are added
84                                                                             to the latched modifiers.
85       XkbIM_UseLatched                                          Off         Any modifiers specified in the
86                                                                             mask field of mods are removed
87                                                                             from the latched modifiers.
88       XkbIM_UseLocked, XkbIM_UseCompat, or XkbIM_UseEffective   On          Any modifiers specified in the
89                                                                             mask  field  of mods are added
90                                                                             to the locked modifiers.
91       XkbIM_UseLocked                                           Off         Any modifiers specified in the
92                                                                             mask field of mods are removed
93                                                                             from the locked modifiers.
94       XkbIM_UseCompat or XkbIM_UseEffective                     Off         Any modifiers specified in the
95                                                                             mask field of mods are removed
96                                                                             from  both  the   locked   and
97                                                                             latched modifiers.
98
99       If  XkbIM_LEDDrivesKB  is  set  and XkbIM_NoExplicit is not, and if you
100       call a function that updates the server's image of  the  indicator  map
101       (such as XkbSetIndicatorMap or XkbSetNamedIndicator),
102        Xkb  changes  the  keyboard  state  and  controls to reflect the other
103       fields of the indicator map. If you attempt to  explicitly  change  the
104       value  of  an  indicator  for  which XkbIM_LEDDrivesKB is absent or for
105       which XkbIM_NoExplicit is present, keyboard state or controls are unaf‐
106       fected.
107
108       If  neither XkbIM_NoAutomatic nor XkbIM_NoExplicit is set in an indica‐
109       tor map, Xkb honors any request to change the state of  the  indicator,
110       but  the new state might be immediately superseded by automatic changes
111       to the indicator state if the keyboard state or controls change.
112
113       The effects of changing an indicator that drives the keyboard are cumu‐
114       lative;  it  is  possible for a single change to affect keyboard group,
115       modifiers, and controls simultaneously.
116
117       If you change an indicator for which  both  the  XkbIM_LEDDrivesKB  and
118       XkbIM_NoAutomatic flags are specified, Xkb applies the keyboard changes
119       specified in the other indicator map fields and changes  the  indicator
120       to  reflect  the  state  that  was  explicitly requested. The indicator
121       remains in the new state until it is explicitly changed again.
122
123       If the XkbIM_NoAutomatic flag is not set and XkbIM_LEDDrivesKB is  set,
124       Xkb applies the changes specified in the other indicator map fields and
125       sets the state of the indicator to the values specified by the  indica‐
126       tor map. Note that it is possible in this case for the indicator to end
127       up in a different state than the one that was explicitly requested. For
128       example,  Xkb  does  not  extinguish  an  indicator  with which_mods of
129       XkbIM_UseBase and mods of Shift if,  at  the  time  Xkb  processes  the
130       request  to  extinguish  the indicator, one of the Shift keys is physi‐
131       cally depressed.
132
133       If you explicitly light an indicator  for  which  XkbIM_LEDDrivesKB  is
134       set,  Xkb  enables  all  of the boolean controls specified in the ctrls
135       field of its indicator map. Explicitly extinguishing such an  indicator
136       causes Xkb to disable all of the boolean controls specified in ctrls.
137
138       For  each  bit set in the which parameter, XkbSetIndicatorMap sends the
139       corresponding indicator map from the desc parameter to the server.
140

SEE ALSO

142       XkbSetNamedIndicator(3)
143
144
145
146X Version 11                     libX11 1.6.4            XkbSetIndicatorMap(3)
Impressum