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

FreeBSD Manual Pages

  
 
  

home | help
XkbNoteDeviceChanges(3)		 XKB FUNCTIONS	       XkbNoteDeviceChanges(3)

NAME
       XkbNoteDeviceChanges - Note device changes reported in an XkbExtension-
       DeviceNotify event

SYNOPSIS
       void XkbNoteDeviceChanges (XkbDeviceChangesPtr  old,  XkbExtensionDevi-
	      ceNotifyEvent *new, unsigned int wanted);

ARGUMENTS
       - old  structure	tracking state changes

       - new  event indicating state changes

       - wanted
	      mask indicating changes to note

DESCRIPTION
       The wanted field	specifies the changes that should be noted in old, and
       is composed of the bitwise inclusive OR of one or  more	of  the	 masks
       from  Table 1. The reason field of the event in new indicates the types
       of changes the event is reporting.   XkbNoteDeviceChanges  updates  the
       XkbDeviceChangesRec  specified  by  old	with the changes that are both
       specified in wanted and contained in new-_reason.

				Table 1	XkbDeviceInfoRec Mask Bits
       ____________________________________________________________________________________
       Name			    XkbDeviceInfoRec Value     Capability If Set
				    Fields Effected
       ____________________________________________________________________________________
       XkbXI_KeyboardsMask			     (1L <<0) Clients can use all
							      Xkb requests and events
							      with KeyClass devices
							      supported	by the input
							      device extension.

       XkbXI_ButtonActionsMask	     num_btns	     (1L <<1) Clients can assign key
				     btn_acts		      actions to buttons
							      non-KeyClass input
							      extension	devices.

       XkbXI_IndicatorNamesMask	     leds->names     (1L <<2) Clients can assign
							      names to indicators on
							      non-KeyClass input
							      extension	devices.

       XkbXI_IndicatorMapsMask	     leds->maps	     (1L <<3) Clients can assign
							      indicator	maps to
							      indicators on
							      non-KeyClass input
							      extension	devices.

       XkbXI_IndicatorStateMask	     leds->state     (1L <<4) Clients can request
							      the status of indicators
							      on non-KeyClass input
							      extension	devices.

       XkbXI_IndicatorsMask	     sz_leds	     (0x1c)   XkbXI_IndicatorNamesMask |
				     num_leds		      XkbXI_IndicatorMapsMask |
				     leds->*		      XkbXI_IndicatorStateMask

       XkbXI_UnsupportedFeaturesMask unsupported     (1L <<15)

       XkbXI_AllDeviceFeaturesMask   Those selected  (0x1e)   XkbXI_IndicatorsMask |
				     by	Value Column	      XkbSI_ButtonActionsMask
				     masks

       XkbXI_AllFeaturesMask	     Those selected  (0x1f)   XkbSI_AllDeviceFeaturesMask |
				     by	Value Column	      XkbSI_KeyboardsMask
				     masks

       XkbXI_AllDetailsMask	     Those selected  (0x801f) XkbXI_AllFeaturesMask |
				     by	Value column	      XkbXI_UnsupportedFeaturesMask
				     masks

       To update a local copy of the state and configuration of	an X input ex-
       tension	 device	 with  the  changes  previously	 noted	in  an	XkbDe-
       viceChangesRec structure, use XkbGetDeviceInfoChanges.

STRUCTURES
       Changes to an Xkb extension device may be tracked by listening to  Xkb-
       DeviceExtensionNotify  events and accumulating the changes in an	XkbDe-
       viceChangesRec structure. The changes noted in the structure  may  then
       be  used	 in subsequent operations to update either a server configura-
       tion or a local copy of an  Xkb	extension  device  configuration.  The
       changes structure is defined as follows:

       typedef struct _XkbDeviceChanges	{
	   unsigned int		changed;       /* bits indicating what has changed */
	   unsigned short	first_btn;     /* number of first button which changed,	if any */
	   unsigned short	num_btns;      /* number of buttons that have changed */
	   XkbDeviceLedChangesRec leds;
       } XkbDeviceChangesRec,*XkbDeviceChangesPtr;

SEE ALSO
       XkbGetDeviceInfoChanges(3)

X Version 11			 libX11	1.6.5	       XkbNoteDeviceChanges(3)

NAME | SYNOPSIS | ARGUMENTS | DESCRIPTION | STRUCTURES | SEE ALSO

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

home | help