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  mask of indicators to change
18
19       desc   keyboard description from which the maps are taken
20

DESCRIPTION

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

SEE ALSO

139       XkbSetNamedIndicator(3)
140
141
142
143X Version 11                     libX11 1.8.7            XkbSetIndicatorMap(3)
Impressum