Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
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
       depending  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 XkbIM_LEDDrivesKB is absent	or for
       which XkbIM_NoExplicit is present, keyboard state or controls are unaf-
       fected.

       If  neither XkbIM_NoAutomatic nor XkbIM_NoExplicit is set in an indica-
       tor 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 re-
       mains 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  indica-
       tor 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
       example,	 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.6.5		 XkbSetIndicatorMap(3)

NAME | SYNOPSIS | ARGUMENTS | DESCRIPTION | SEE ALSO

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=XkbSetIndicatorMap&sektion=3&manpath=FreeBSD+12.0-RELEASE+and+Ports>

home | help