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

NAME

6       XkbChangeControls  -  Provides  a flexible method for updating the con‐
7       trols in a server to match those in the changed keyboard description
8

SYNOPSIS

10       Bool  XkbChangeControls  (Display   *dpy,   XkbDescPtr   xkb,   XkbCon‐
11              trolsChangesPtr changes);
12

ARGUMENTS

14       - dpy  connection to X server
15
16       - xkb  keyboard description with changed xkb->ctrls
17
18       - changes
19              which parts of xkb->ctrls have changed
20

DESCRIPTION

22       The  XkbControlsChangesRec structure allows applications to track modi‐
23       fications to an XkbControlsRec structure and thereby reduce the  amount
24       of traffic sent to the server. The same XkbControlsChangesRec structure
25       may be used in several successive modifications to the same XkbControl‐
26       sRec structure, then subsequently used to cause all of the changes, and
27       only the changes, to be propagated to the server.
28
29       The changed_ctrls field is a mask specifying which logical sets of data
30       in the controls structure have been modified. In this context, modified
31       means set, that is, if a value is set to the same value  it  previously
32       contained,  it  has still been modified, and is noted as changed. Valid
33       values for changed_ctrls are any combination of the masks listed in Ta‐
34       ble 1 that have "ok" in the changed_ctrls column. Setting a bit implies
35       the corresponding data fields from the  "Relevant  XkbControlsRec  Data
36       Fields" column in Table 1 have been modified. The enabled_ctrls_changes
37       field specifies which bits in the enabled_ctrls field have changed.  If
38       the number of keyboard groups has changed, the num_groups_changed field
39       is set to True.
40
41       Table 1 shows the actual values for the individual mask  bits  used  to
42       select controls for modification and to enable and disable the control.
43       Note that the same mask bit is used to specify general modifications to
44       the parameters used to configure the control (which), and to enable and
45       disable the control (enabled_ctrls). The anomalies  in  the  table  (no
46       "ok"  in column) are for controls that have no configurable attributes;
47       and for controls that are not boolean controls and therefore cannot  be
48       enabled or disabled.
49
50
51                                                                              Table 1 Xkb Controls
52       ────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
53       Control                                                                             Control
54                                                                                           Selection           Relevant
55                                                                                           Mask                XkbControlsRec            Boolean Control
56                                                                                           (which parameter)   DataFields                enabled_ctrls bit         Section
57       ───────────────────────────────────────────────────────────────────────────────────
58       AccessXFeedback                                                                     XkbAccessXFeed‐     ax_options:               XkbAccessXFeedbackMask    10.6.3
59                                                                                           backMask
60                                                                                                                 XkbAX_*FBMask
61       AccessXKeys                                                                                                                       XkbAccessXKeysMask        10.6.1
62       AccessXTimeout                                                                      XkbAccessXTime‐     ax_timeout                XkbAccessXTimeoutMask     10.6.2
63                                                                                           outMask
64                                                                                                               axt_opts_mask
65                                                                                                               axt_opts_values
66
67                                                                                                               axt_ctrls_mask
68                                                                                                               axt_ctrls_values
69       AudibleBell                                                                                                                       XkbAudibleBellMask        9.2
70       AutoReset                                                                                                                                                   10.1.2
71       BounceKeys                                                                          XkbBounceKeysMask   debounce_delay            XkbBounceKeysMask         10.6.7
72       Detectable-                                                                                                                                                 10.3.3
73       Autorepeat
74       EnabledControls                                                                     XkbControlsEn‐      enabled_ctrls             Non-Boolean Control       10.1.1
75                                                                                           abledMask
76       GroupsWrap                                                                          XkbGroupsWrapMask   groups_wrap               Non-Boolean Control       10.7.1
77       IgnoreGroupLock                                                                                                                   XkbIgnoreGroupLockMask    10.7.3
78       IgnoreLockMods                                                                      XkbIgnoreLock‐      ignore_lock               Non-Boolean Control       5.1
79                                                                                           ModsMask
80       InternalMods                                                                        XkbInternalMods‐    internal                  Non-Boolean Control       5.1
81                                                                                           Mask
82       MouseKeys                                                                           XkbMouseKeysMask    mk_dflt_btn               XkbMouseKeysMask          10.5.1
83       MouseKeysAccel                                                                      XkbMouseKeysAc‐     mk_delay                  XkbMouseKeysAccelMask     10.5.2
84                                                                                           celMask
85                                                                                                               mk_interval
86                                                                                                               mk_time_to_max
87                                                                                                               mk_max_speed
88                                                                                                               mk_curve
89       Overlay1                                                                                                                          XkbOverlay1Mask           10.4
90       Overlay2                                                                                                                          XkbOverlay2Mask           10.4
91       PerKeyRepeat                                                                        XkbPerKeyRepeat‐    per_key_repeat            Non-Boolean Control       10.3.1
92                                                                                           Mask
93       RepeatKeys                                                                          XkbRepeatKeysMask   repeat_delay              XkbRepeatKeysMask         10.3
94                                                                                                                                         repeat_interval
95       SlowKeys                                                                            XkbSlowKeysMask     slow_keys_delay           XkbSlowKeysMask           10.6.6
96       StickyKeys                                                                          XkbStickyKeysMask   ax_options:               XkbStickyKeysMask         10.6.8
97                                                                                                                 XkbAX_TwoKeysMask
98                                                                                                                 XkbAX_LatchToLockMask
99
100       Table 2 shows the actual values for the individual mask bits used to select
101       controls for
102       modification and to enable and disable the control. Note that the same mask bit
103       is used to
104       specify general modifications to the parameters used to configure the control
105       (which), and to
106       enable and disable the control (enabled_ctrls). The anomalies in the table (no
107       "ok" in column)
108       are for controls that have no configurable attributes; and for controls that are
109       not boolean
110       controls and therefore cannot be enabled or disabled.
111
112
113       c s s s
114       l l l l
115       l l l l
116       l l l l.
117       Table 2 Controls Mask Bits
118       ────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
119       Mask Bit                                                                            which or            enabled                   Value
120                                                                                           changed_ctrls       _ctrls
121       ────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
122       XkbRepeatKeysMask                                                                   ok                  ok                        (1L<<0)
123       XkbSlowKeysMask                                                                     ok                  ok                        (1L<<1)
124       XkbBounceKeysMask                                                                   ok                  ok                        (1L<<2)
125       XkbStickyKeysMask                                                                   ok                  ok                        (1L<<3)
126       XkbMouseKeysMask                                                                    ok                  ok                        (1L<<4)
127       XkbMouseKeysAccelMask                                                               ok                  ok                        (1L<<5)
128       XkbAccessXKeysMask                                                                  ok                  ok                        (1L<<6)
129       XkbAccessXTimeoutMask                                                               ok                  ok                        (1L<<7)
130       XkbAccessXFeedbackMask                                                              ok                  ok                        (1L<<8)
131       XkbAudibleBellMask                                                                                      ok                        (1L<<9)
132
133       XkbOverlay1Mask                                                                                         ok                        (1L<<10)
134       XkbOverlay2Mask                                                                                         ok                        (1L<<11)
135       XkbIgnoreGroupLockMask                                                                                  ok                        (1L<<12)
136       XkbGroupsWrapMask                                                                   ok                                            (1L<<27)
137       XkbInternalModsMask                                                                 ok                                            (1L<<28)
138       XkbIgnoreLockModsMask                                                               ok                                            (1L<<29)
139       XkbPerKeyRepeatMask                                                                 ok                                            (1L<<30)
140       XkbControlsEnabledMask                                                              ok                                            (1L<<31)
141       XkbAccessXOptionsMask                                                               ok                  ok                        (XkbStickyKeysMask |
142                                                                                                                                         XkbAccessXFeedbackMask)
143       XkbAllBooleanCtrlsMask                                                                                  ok                        (0x00001FFF)
144       XkbAllControlsMask                                                                  ok                                            (0xF8001FFF)
145
146
147
148
149       If you have an Xkb description with controls that  have  been  modified
150       and  an XkbControlsChangesRec that describes the changes that have been
151       made, the XkbChangeControls function provides  a  flexible  method  for
152       updating  the  controls  in a server to match those in the changed key‐
153       board description.
154
155       XkbChangeControls copies any controls fields specified by changes  from
156       the  keyboard description controls structure, xkb->ctrls, to the server
157       specified by dpy.
158

STRUCTURES

160       The XkbControlsChangesRec structure is defined as follows:
161
162       typedef struct _XkbControlsChanges {
163           unsigned int  changed_ctrls;         /∗ bits indicating changed control data
164       */
165           unsigned int  enabled_ctrls_changes; /∗ bits indicating enabled/disabled
166       controls */
167           Bool          num_groups_changed;    /∗ True if number of keyboard groups
168       changed */
169       } XkbControlsChangesRec,*XkbControlsChangesPtr;
170
171
172
173
174X Version 11                     libX11 1.6.5             XkbChangeControls(3)
Impressum