dwww Home | Manual pages | Find package

XkbSetIndicatorMap(3)            XKB FUNCTIONS            XkbSetIndicatorMap(3)

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

SYNOPSIS

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

ARGUMENTS
       dpy    connection to the X server

       which  mask of indicators to change

       desc   keyboard description from which the maps are taken

DESCRIPTION
       This section discusses the effects of explicitly changing indicators de-
       pending upon different settings in the indicator map. See Tables  1  and
       Table  2 for information on the effects of the indicator map fields when
       explicit changes are made.

            Table 1 XkbIndicatorMapRec which_groups and groups,
                          Indicator Drives Keyboard
       ────────────────────────────────────────────────────────────────
       which_groups         New State   Effect on Keyboard Group State
       ────────────────────────────────────────────────────────────────
       XkbIM_UseNone        On or Off   No effect
       XkbIM_UseBase        On or Off   No effect
       XkbIM_UseLatched     On          The groups field is treated as
                                        a  group  mask.  The  keyboard
                                        group  latch is changed to the
                                        lowest numbered  group  speci-
                                        fied  in  groups; if groups is
                                        empty,  the   keyboard   group
                                        latch is changed to zero.
       XkbIM_UseLatched     Off         The groups field is treated as
                                        a group mask. If the indicator
                                        is   explicitly  extinguished,
                                        keyboard   group   latch    is
                                        changed to the lowest numbered
                                        group not specified in groups;
                                        if  groups  is  zero, the key-
                                        board group latch  is  set  to
                                        the index of the highest legal
                                        keyboard group.
       XkbIM_UseLocked or
       XkbIM_UseEffective   On          If  the  groups mask is empty,
                                        group is not  changed;  other-
                                        wise,   the   locked  keyboard
                                        group is changed to the lowest
                                        numbered  group  specified  in
                                        groups.
       XkbIM_UseLocked or
       XkbIM_UseEffective   Off         Locked   keyboard   group   is
                                        changed to the lowest numbered
                                        group that is not specified in
                                        the groups mask, or to  Group1
                                        if  the  groups  mask contains
                                        all keyboard groups.

               Table 2 XkbIndicatorMapRec which_mods and mods,
                          Indicator Drives Keyboard
       ─────────────────────────────────────────────────────────────────
       which_mods            New State   Effect on Keyboard Modifiers
       ─────────────────────────────────────────────────────────────────
       XkbIM_UseNone or
       XkbIM_UseBase         On or Off   No Effect
       XkbIM_UseLatched      On          Any modifiers specified in the
                                         mask field of mods  are  added
                                         to the latched modifiers.
       XkbIM_UseLatched      Off         Any modifiers specified in the
                                         mask field of mods are removed
                                         from the latched modifiers.
       XkbIM_UseLocked,
       XkbIM_UseCompat, or
       XkbIM_UseEffective    On          Any modifiers specified in the
                                         mask  field  of mods are added
                                         to the locked modifiers.
       XkbIM_UseLocked       Off         Any modifiers specified in the
                                         mask field of mods are removed
                                         from the locked modifiers.
       XkbIM_UseCompat or
       XkbIM_UseEffective    Off         Any modifiers specified in the
                                         mask field of mods are removed
                                         from  both  the   locked   and
                                         latched modifiers.

       If XkbIM_LEDDrivesKB is set and XkbIM_NoExplicit is not, and if you call
       a function that updates the server's image of the indicator map (such as
       XkbSetIndicatorMap  or  XkbSetNamedIndicator),  Xkb changes the keyboard
       state and controls to reflect the other fields of the indicator map.  If
       you attempt to explicitly change the value of an indicator for which Xk-
       bIM_LEDDrivesKB is absent or for which XkbIM_NoExplicit is present, key-
       board state or controls are unaffected.

       If neither XkbIM_NoAutomatic nor XkbIM_NoExplicit is set in an indicator
       map,  Xkb  honors  any request to change the state of the indicator, but
       the new state might be immediately superseded by  automatic  changes  to
       the indicator state if the keyboard state or controls change.

       The  effects of changing an indicator that drives the keyboard are cumu-
       lative; it is possible for a single change  to  affect  keyboard  group,
       modifiers, and controls simultaneously.

       If  you change an indicator for which both the XkbIM_LEDDrivesKB and Xk-
       bIM_NoAutomatic flags are specified, Xkb applies  the  keyboard  changes
       specified in the other indicator map fields and changes the indicator to
       reflect  the  state that was explicitly requested. The indicator remains
       in the new state until it is explicitly changed again.

       If the XkbIM_NoAutomatic flag is not set and XkbIM_LEDDrivesKB  is  set,
       Xkb  applies the changes specified in the other indicator map fields and
       sets the state of the indicator to the values specified by the indicator
       map. Note that it is possible in this case for the indicator to  end  up
       in a different state than the one that was explicitly requested. For ex-
       ample,  Xkb  does  not  extinguish  an  indicator with which_mods of Xk-
       bIM_UseBase and mods of Shift if, at the time Xkb processes the  request
       to  extinguish  the  indicator,  one of the Shift keys is physically de-
       pressed.

       If you explicitly light an indicator for which XkbIM_LEDDrivesKB is set,
       Xkb enables all of the boolean controls specified in the ctrls field  of
       its indicator map. Explicitly extinguishing such an indicator causes Xkb
       to disable all of the boolean controls specified in ctrls.

       For  each  bit  set in the which parameter, XkbSetIndicatorMap sends the
       corresponding indicator map from the desc parameter to the server.

SEE ALSO
       XkbSetNamedIndicator(3)

X Version 11                     libX11 1.8.12            XkbSetIndicatorMap(3)

Generated by dwww version 1.16 on Sat Oct 3 06:48:23 CEST 2026.