1 /************************************************************
2 Copyright (c) 1993 by Silicon Graphics Computer Systems, Inc.
4 Permission to use, copy, modify, and distribute this
5 software and its documentation for any purpose and without
6 fee is hereby granted, provided that the above copyright
7 notice appear in all copies and that both that copyright
8 notice and this permission notice appear in supporting
9 documentation, and that the name of Silicon Graphics not be
10 used in advertising or publicity pertaining to distribution
11 of the software without specific prior written permission.
12 Silicon Graphics makes no representation about the suitability
13 of this software for any purpose. It is provided "as is"
14 without any express or implied warranty.
16 SILICON GRAPHICS DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS
17 SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
18 AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL SILICON
19 GRAPHICS BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL
20 DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
21 DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
22 OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH
23 THE USE OR PERFORMANCE OF THIS SOFTWARE.
25 ********************************************************/
31 #include <X11/extensions/XKB.h>
39 #define XkbPaddedSize(n) ((((unsigned int)(n)+3) >> 2) << 2)
41 typedef struct _xkbUseExtension {
43 CARD8 xkbReqType; /* always X_KBUseExtension */
45 CARD16 wantedMajor B16;
46 CARD16 wantedMinor B16;
48 #define sz_xkbUseExtensionReq 8
50 typedef struct _xkbUseExtensionReply {
51 BYTE type; /* X_Reply */
53 CARD16 sequenceNumber B16;
55 CARD16 serverMajor B16;
56 CARD16 serverMinor B16;
62 } xkbUseExtensionReply;
63 #define sz_xkbUseExtensionReply 32
65 typedef struct _xkbSelectEvents {
67 CARD8 xkbReqType; /* X_KBSelectEvents */
69 CARD16 deviceSpec B16;
70 CARD16 affectWhich B16;
76 #define sz_xkbSelectEventsReq 16
78 typedef struct _xkbBell {
80 CARD8 xkbReqType; /* X_KBBell */
82 CARD16 deviceSpec B16;
95 #define sz_xkbBellReq 28
97 typedef struct _xkbGetState {
99 CARD8 xkbReqType; /* always X_KBGetState */
101 CARD16 deviceSpec B16;
104 #define sz_xkbGetStateReq 8
106 typedef struct _xkbGetStateReply {
109 CARD16 sequenceNumber B16;
118 INT16 latchedGroup B16;
121 CARD8 compatGrabMods;
123 CARD8 compatLookupMods;
125 CARD16 ptrBtnState B16;
129 #define sz_xkbGetStateReply 32
131 typedef struct _xkbLatchLockState {
133 CARD8 xkbReqType; /* always X_KBLatchLockState */
135 CARD16 deviceSpec B16;
136 CARD8 affectModLocks;
140 CARD8 affectModLatches;
144 INT16 groupLatch B16;
145 } xkbLatchLockStateReq;
146 #define sz_xkbLatchLockStateReq 16
148 typedef struct _xkbGetControls {
150 CARD8 xkbReqType; /* always X_KBGetControls */
152 CARD16 deviceSpec B16;
155 #define sz_xkbGetControlsReq 8
157 typedef struct _xkbGetControlsReply {
158 BYTE type; /* X_Reply */
160 CARD16 sequenceNumber B16;
166 CARD8 ignoreLockMods;
167 CARD8 internalRealMods;
168 CARD8 ignoreLockRealMods;
170 CARD16 internalVMods B16;
171 CARD16 ignoreLockVMods B16;
172 CARD16 repeatDelay B16;
173 CARD16 repeatInterval B16;
174 CARD16 slowKeysDelay B16;
175 CARD16 debounceDelay B16;
177 CARD16 mkInterval B16;
178 CARD16 mkTimeToMax B16;
179 CARD16 mkMaxSpeed B16;
181 CARD16 axOptions B16;
182 CARD16 axTimeout B16;
183 CARD16 axtOptsMask B16;
184 CARD16 axtOptsValues B16;
186 CARD32 axtCtrlsMask B32;
187 CARD32 axtCtrlsValues B32;
188 CARD32 enabledCtrls B32;
189 BYTE perKeyRepeat[XkbPerKeyBitArraySize];
190 } xkbGetControlsReply;
191 #define sz_xkbGetControlsReply 92
193 typedef struct _xkbSetControls {
195 CARD8 xkbReqType; /* always X_KBSetControls */
197 CARD16 deviceSpec B16;
198 CARD8 affectInternalMods;
200 CARD8 affectIgnoreLockMods;
201 CARD8 ignoreLockMods;
202 CARD16 affectInternalVMods B16;
203 CARD16 internalVMods B16;
204 CARD16 affectIgnoreLockVMods B16;
205 CARD16 ignoreLockVMods B16;
208 CARD16 axOptions B16;
210 CARD32 affectEnabledCtrls B32;
211 CARD32 enabledCtrls B32;
212 CARD32 changeCtrls B32;
213 CARD16 repeatDelay B16;
214 CARD16 repeatInterval B16;
215 CARD16 slowKeysDelay B16;
216 CARD16 debounceDelay B16;
218 CARD16 mkInterval B16;
219 CARD16 mkTimeToMax B16;
220 CARD16 mkMaxSpeed B16;
222 CARD16 axTimeout B16;
223 CARD32 axtCtrlsMask B32;
224 CARD32 axtCtrlsValues B32;
225 CARD16 axtOptsMask B16;
226 CARD16 axtOptsValues B16;
227 BYTE perKeyRepeat[XkbPerKeyBitArraySize];
229 #define sz_xkbSetControlsReq 100
231 typedef struct _xkbKTMapEntryWireDesc {
236 CARD16 virtualMods B16;
238 } xkbKTMapEntryWireDesc;
239 #define sz_xkbKTMapEntryWireDesc 8
241 typedef struct _xkbKTSetMapEntryWireDesc {
244 CARD16 virtualMods B16;
245 } xkbKTSetMapEntryWireDesc;
246 #define sz_xkbKTSetMapEntryWireDesc 4
248 typedef struct _xkbModsWireDesc {
249 CARD8 mask; /* GetMap only */
251 CARD16 virtualMods B16;
253 #define sz_xkbModsWireDesc 4
255 typedef struct _xkbKeyTypeWireDesc {
258 CARD16 virtualMods B16;
263 } xkbKeyTypeWireDesc;
264 #define sz_xkbKeyTypeWireDesc 8
266 typedef struct _xkbSymMapWireDesc {
267 CARD8 ktIndex[XkbNumKbdGroups];
272 #define sz_xkbSymMapWireDesc 8
274 typedef struct _xkbVModMapWireDesc {
278 } xkbVModMapWireDesc;
279 #define sz_xkbVModMapWireDesc 4
281 typedef struct _xkbBehaviorWireDesc {
286 } xkbBehaviorWireDesc;
287 #define sz_xkbBehaviorWireDesc 4
289 typedef struct _xkbActionWireDesc {
293 #define sz_xkbActionWireDesc 8
295 typedef struct _xkbGetMap {
297 CARD8 xkbReqType; /* always X_KBGetMap */
299 CARD16 deviceSpec B16;
308 KeyCode firstKeyBehavior;
310 CARD16 virtualMods B16;
311 KeyCode firstKeyExplicit;
313 KeyCode firstModMapKey;
315 KeyCode firstVModMapKey;
319 #define sz_xkbGetMapReq 28
321 typedef struct _xkbGetMapReply {
322 CARD8 type; /* always X_Reply */
324 CARD16 sequenceNumber B16;
334 CARD16 totalSyms B16;
337 CARD16 totalActs B16;
339 KeyCode firstKeyBehavior;
341 CARD8 totalKeyBehaviors;
342 KeyCode firstKeyExplicit;
344 CARD8 totalKeyExplicit;
345 KeyCode firstModMapKey;
347 CARD8 totalModMapKeys;
348 KeyCode firstVModMapKey;
350 CARD8 totalVModMapKeys;
352 CARD16 virtualMods B16;
354 #define sz_xkbGetMapReply 40
356 #define XkbSetMapResizeTypes (1L<<0)
357 #define XkbSetMapRecomputeActions (1L<<1)
358 #define XkbSetMapAllFlags (0x3)
360 typedef struct _xkbSetMap {
362 CARD8 xkbReqType; /* always X_KBSetMap */
364 CARD16 deviceSpec B16;
373 CARD16 totalSyms B16;
376 CARD16 totalActs B16;
377 KeyCode firstKeyBehavior;
379 CARD8 totalKeyBehaviors;
380 KeyCode firstKeyExplicit;
382 CARD8 totalKeyExplicit;
383 KeyCode firstModMapKey;
385 CARD8 totalModMapKeys;
386 KeyCode firstVModMapKey;
388 CARD8 totalVModMapKeys;
389 CARD16 virtualMods B16;
391 #define sz_xkbSetMapReq 36
393 typedef struct _xkbSymInterpretWireDesc {
399 xkbActionWireDesc act;
400 } xkbSymInterpretWireDesc;
401 #define sz_xkbSymInterpretWireDesc 16
403 typedef struct _xkbGetCompatMap {
405 CARD8 xkbReqType; /* always X_KBGetCompatMap */
407 CARD16 deviceSpec B16;
412 } xkbGetCompatMapReq;
413 #define sz_xkbGetCompatMapReq 12
415 typedef struct _xkbGetCompatMapReply {
416 CARD8 type; /* always X_Reply */
418 CARD16 sequenceNumber B16;
429 } xkbGetCompatMapReply;
430 #define sz_xkbGetCompatMapReply 32
432 typedef struct _xkbSetCompatMap {
434 CARD8 xkbReqType; /* always X_KBSetCompatMap */
436 CARD16 deviceSpec B16;
438 BOOL recomputeActions;
444 } xkbSetCompatMapReq;
445 #define sz_xkbSetCompatMapReq 16
447 typedef struct _xkbGetIndicatorState {
449 CARD8 xkbReqType; /* always X_KBGetIndicatorState */
451 CARD16 deviceSpec B16;
453 } xkbGetIndicatorStateReq;
454 #define sz_xkbGetIndicatorStateReq 8
456 typedef struct _xkbGetIndicatorStateReply {
457 CARD8 type; /* always X_Reply */
459 CARD16 sequenceNumber B16;
467 } xkbGetIndicatorStateReply;
468 #define sz_xkbGetIndicatorStateReply 32
470 typedef struct _xkbGetIndicatorMap {
472 CARD8 xkbReqType; /* always X_KBGetIndicatorMap */
474 CARD16 deviceSpec B16;
477 } xkbGetIndicatorMapReq;
478 #define sz_xkbGetIndicatorMapReq 12
480 typedef struct _xkbGetIndicatorMapReply {
481 CARD8 type; /* always X_Reply */
483 CARD16 sequenceNumber B16;
486 CARD32 realIndicators B32;
493 } xkbGetIndicatorMapReply;
494 #define sz_xkbGetIndicatorMapReply 32
496 typedef struct _xkbIndicatorMapWireDesc {
503 CARD16 virtualMods B16;
505 } xkbIndicatorMapWireDesc;
506 #define sz_xkbIndicatorMapWireDesc 12
508 typedef struct _xkbSetIndicatorMap {
510 CARD8 xkbReqType; /* always X_KBSetIndicatorMap */
512 CARD16 deviceSpec B16;
515 } xkbSetIndicatorMapReq;
516 #define sz_xkbSetIndicatorMapReq 12
518 typedef struct _xkbGetNamedIndicator {
520 CARD8 xkbReqType; /* X_KBGetNamedIndicator */
522 CARD16 deviceSpec B16;
527 } xkbGetNamedIndicatorReq;
528 #define sz_xkbGetNamedIndicatorReq 16
530 typedef struct _xkbGetNamedIndicatorReply {
533 CARD16 sequenceNumber B16;
546 CARD16 virtualMods B16;
551 } xkbGetNamedIndicatorReply;
552 #define sz_xkbGetNamedIndicatorReply 32
554 typedef struct _xkbSetNamedIndicator {
556 CARD8 xkbReqType; /* X_KBSetNamedIndicator */
558 CARD16 deviceSpec B16;
573 CARD16 virtualMods B16;
575 } xkbSetNamedIndicatorReq;
576 #define sz_xkbSetNamedIndicatorReq 32
578 typedef struct _xkbGetNames {
580 CARD8 xkbReqType; /* always X_KBGetNames */
582 CARD16 deviceSpec B16;
586 #define sz_xkbGetNamesReq 12
588 typedef struct _xkbGetNamesReply {
591 CARD16 sequenceNumber B16;
598 CARD16 virtualMods B16;
601 CARD32 indicators B32;
604 CARD16 nKTLevels B16;
607 #define sz_xkbGetNamesReply 32
609 typedef struct _xkbSetNames {
611 CARD8 xkbReqType; /* always X_KBSetNames */
613 CARD16 deviceSpec B16;
614 CARD16 virtualMods B16;
620 CARD32 indicators B32;
627 CARD16 totalKTLevelNames B16;
629 #define sz_xkbSetNamesReq 28
631 typedef struct _xkbPointWireDesc {
635 #define sz_xkbPointWireDesc 4
637 typedef struct _xkbOutlineWireDesc {
641 } xkbOutlineWireDesc;
642 #define sz_xkbOutlineWireDesc 4
644 typedef struct _xkbShapeWireDesc {
651 #define sz_xkbShapeWireDesc 8
653 typedef struct _xkbSectionWireDesc {
665 } xkbSectionWireDesc;
666 #define sz_xkbSectionWireDesc 20
668 typedef struct _xkbRowWireDesc {
675 #define sz_xkbRowWireDesc 8
677 typedef struct _xkbKeyWireDesc {
678 CARD8 name[XkbKeyNameLength];
683 #define sz_xkbKeyWireDesc 8
685 typedef struct _xkbOverlayWireDesc {
690 } xkbOverlayWireDesc;
691 #define sz_xkbOverlayWireDesc 8
693 typedef struct _xkbOverlayRowWireDesc {
697 } xkbOverlayRowWireDesc;
698 #define sz_xkbOverlayRowWireDesc 4
700 typedef struct _xkbOverlayKeyWireDesc {
701 CARD8 over[XkbKeyNameLength];
702 CARD8 under[XkbKeyNameLength];
703 } xkbOverlayKeyWireDesc;
704 #define sz_xkbOverlayKeyWireDesc 8
706 typedef struct _xkbShapeDoodadWireDesc {
717 } xkbShapeDoodadWireDesc;
718 #define sz_xkbShapeDoodadWireDesc 20
720 typedef struct _xkbTextDoodadWireDesc {
732 } xkbTextDoodadWireDesc;
733 #define sz_xkbTextDoodadWireDesc 20
735 typedef struct _xkbIndicatorDoodadWireDesc {
747 } xkbIndicatorDoodadWireDesc;
748 #define sz_xkbIndicatorDoodadWireDesc 20
750 typedef struct _xkbLogoDoodadWireDesc {
761 } xkbLogoDoodadWireDesc;
762 #define sz_xkbLogoDoodadWireDesc 20
764 typedef struct _xkbAnyDoodadWireDesc {
773 } xkbAnyDoodadWireDesc;
774 #define sz_xkbAnyDoodadWireDesc 20
776 typedef union _xkbDoodadWireDesc {
777 xkbAnyDoodadWireDesc any;
778 xkbShapeDoodadWireDesc shape;
779 xkbTextDoodadWireDesc text;
780 xkbIndicatorDoodadWireDesc indicator;
781 xkbLogoDoodadWireDesc logo;
783 #define sz_xkbDoodadWireDesc 20
785 typedef struct _xkbGetGeometry {
787 CARD8 xkbReqType; /* always X_KBGetGeometry */
789 CARD16 deviceSpec B16;
793 #define sz_xkbGetGeometryReq 12
795 typedef struct _xkbGetGeometryReply {
796 CARD8 type; /* always X_Reply */
798 CARD16 sequenceNumber B16;
805 CARD16 nProperties B16;
808 CARD16 nSections B16;
810 CARD16 nKeyAliases B16;
813 } xkbGetGeometryReply;
814 #define sz_xkbGetGeometryReply 32
816 typedef struct _xkbSetGeometry {
818 CARD8 xkbReqType; /* always X_KBSetGeometry */
820 CARD16 deviceSpec B16;
826 CARD16 nProperties B16;
829 CARD16 nKeyAliases B16;
834 #define sz_xkbSetGeometryReq 28
836 typedef struct _xkbPerClientFlags {
838 CARD8 xkbReqType;/* always X_KBPerClientFlags */
840 CARD16 deviceSpec B16;
844 CARD32 ctrlsToChange B32;
845 CARD32 autoCtrls B32;
846 CARD32 autoCtrlValues B32;
847 } xkbPerClientFlagsReq;
848 #define sz_xkbPerClientFlagsReq 28
850 typedef struct _xkbPerClientFlagsReply {
851 CARD8 type; /* always X_Reply */
853 CARD16 sequenceNumber B16;
855 CARD32 supported B32;
857 CARD32 autoCtrls B32;
858 CARD32 autoCtrlValues B32;
861 } xkbPerClientFlagsReply;
862 #define sz_xkbPerClientFlagsReply 32
864 typedef struct _xkbListComponents {
866 CARD8 xkbReqType; /* always X_KBListComponents */
868 CARD16 deviceSpec B16;
870 } xkbListComponentsReq;
871 #define sz_xkbListComponentsReq 8
873 typedef struct _xkbListComponentsReply {
874 CARD8 type; /* always X_Reply */
876 CARD16 sequenceNumber B16;
879 CARD16 nKeycodes B16;
881 CARD16 nCompatMaps B16;
883 CARD16 nGeometries B16;
888 } xkbListComponentsReply;
889 #define sz_xkbListComponentsReply 32
891 typedef struct _xkbGetKbdByName {
893 CARD8 xkbReqType; /* always X_KBGetKbdByName */
895 CARD16 deviceSpec B16;
896 CARD16 need B16; /* combination of XkbGBN_* */
897 CARD16 want B16; /* combination of XkbGBN_* */
900 } xkbGetKbdByNameReq;
901 #define sz_xkbGetKbdByNameReq 12
903 typedef struct _xkbGetKbdByNameReply {
904 CARD8 type; /* always X_Reply */
906 CARD16 sequenceNumber B16;
912 CARD16 found B16; /* combination of XkbGBN_* */
913 CARD16 reported B16; /* combination of XkbAllComponents */
918 } xkbGetKbdByNameReply;
919 #define sz_xkbGetKbdByNameReply 32
921 typedef struct _xkbDeviceLedsWireDesc {
924 CARD32 namesPresent B32;
925 CARD32 mapsPresent B32;
926 CARD32 physIndicators B32;
928 } xkbDeviceLedsWireDesc;
929 #define sz_xkbDeviceLedsWireDesc 20
931 typedef struct _xkbGetDeviceInfo {
933 CARD8 xkbReqType; /* always X_KBGetDeviceInfo */
935 CARD16 deviceSpec B16;
943 } xkbGetDeviceInfoReq;
944 #define sz_xkbGetDeviceInfoReq 16
946 typedef struct _xkbGetDeviceInfoReply {
947 CARD8 type; /* always X_Reply */
949 CARD16 sequenceNumber B16;
952 CARD16 supported B16;
953 CARD16 unsupported B16;
954 CARD16 nDeviceLedFBs B16;
955 CARD8 firstBtnWanted;
961 CARD16 dfltKbdFB B16;
962 CARD16 dfltLedFB B16;
965 } xkbGetDeviceInfoReply;
966 #define sz_xkbGetDeviceInfoReply 32
968 typedef struct _xkbSetDeviceInfo {
970 CARD8 xkbReqType; /* always X_KBSetDeviceInfo */
972 CARD16 deviceSpec B16;
976 CARD16 nDeviceLedFBs B16;
977 } xkbSetDeviceInfoReq;
978 #define sz_xkbSetDeviceInfoReq 12
980 typedef struct _xkbSetDebuggingFlags {
982 CARD8 xkbReqType; /* always X_KBSetDebuggingFlags */
984 CARD16 msgLength B16;
986 CARD32 affectFlags B32;
988 CARD32 affectCtrls B32;
990 } xkbSetDebuggingFlagsReq;
991 #define sz_xkbSetDebuggingFlagsReq 24
993 typedef struct _xkbSetDebuggingFlagsReply {
994 BYTE type; /* X_Reply */
996 CARD16 sequenceNumber B16;
998 CARD32 currentFlags B32;
999 CARD32 currentCtrls B32;
1000 CARD32 supportedFlags B32;
1001 CARD32 supportedCtrls B32;
1004 } xkbSetDebuggingFlagsReply;
1005 #define sz_xkbSetDebuggingFlagsReply 32
1008 * X KEYBOARD EXTENSION EVENT STRUCTURES
1011 typedef struct _xkbAnyEvent {
1014 CARD16 sequenceNumber B16;
1025 #define sz_xkbAnyEvent 32
1027 typedef struct _xkbNewKeyboardNotify {
1030 CARD16 sequenceNumber B16;
1036 KeyCode oldMinKeyCode;
1037 KeyCode oldMaxKeyCode;
1046 } xkbNewKeyboardNotify;
1047 #define sz_xkbNewKeyboardNotify 32
1049 typedef struct _xkbMapNotify {
1052 CARD16 sequenceNumber B16;
1055 CARD8 ptrBtnActions;
1061 KeyCode firstKeySym;
1063 KeyCode firstKeyAct;
1065 KeyCode firstKeyBehavior;
1066 CARD8 nKeyBehaviors;
1067 KeyCode firstKeyExplicit;
1069 KeyCode firstModMapKey;
1071 KeyCode firstVModMapKey;
1073 CARD16 virtualMods B16;
1076 #define sz_xkbMapNotify 32
1078 typedef struct _xkbStateNotify {
1081 CARD16 sequenceNumber B16;
1089 INT16 baseGroup B16;
1090 INT16 latchedGroup B16;
1094 CARD8 compatGrabMods;
1096 CARD8 compatLookupMods;
1097 CARD16 ptrBtnState B16;
1104 #define sz_xkbStateNotify 32
1106 typedef struct _xkbControlsNotify {
1109 CARD16 sequenceNumber B16;
1114 CARD32 changedControls B32;
1115 CARD32 enabledControls B32;
1116 CARD32 enabledControlChanges B32;
1122 } xkbControlsNotify;
1123 #define sz_xkbControlsNotify 32
1125 typedef struct _xkbIndicatorNotify {
1128 CARD16 sequenceNumber B16;
1138 } xkbIndicatorNotify;
1139 #define sz_xkbIndicatorNotify 32
1141 typedef struct _xkbNamesNotify {
1144 CARD16 sequenceNumber B16;
1151 CARD8 firstLevelName;
1156 CARD8 changedGroupNames;
1157 CARD16 changedVirtualMods B16;
1160 CARD32 changedIndicators B32;
1163 #define sz_xkbNamesNotify 32
1165 typedef struct _xkbCompatMapNotify {
1168 CARD16 sequenceNumber B16;
1171 CARD8 changedGroups;
1174 CARD16 nTotalSI B16;
1179 } xkbCompatMapNotify;
1180 #define sz_xkbCompatMapNotify 32
1182 typedef struct _xkbBellNotify {
1185 CARD16 sequenceNumber B16;
1192 CARD16 duration B16;
1200 #define sz_xkbBellNotify 32
1202 typedef struct _xkbActionMessage {
1205 CARD16 sequenceNumber B16;
1210 BOOL keyEventFollows;
1218 #define sz_xkbActionMessage 32
1220 typedef struct _xkbAccessXNotify {
1223 CARD16 sequenceNumber B16;
1228 CARD16 slowKeysDelay B16;
1229 CARD16 debounceDelay B16;
1235 #define sz_xkbAccessXNotify 32
1237 typedef struct _xkbExtensionDeviceNotify {
1240 CARD16 sequenceNumber B16;
1245 CARD16 ledClass B16;
1247 CARD32 ledsDefined B32;
1248 CARD32 ledState B32;
1251 CARD16 supported B16;
1252 CARD16 unsupported B16;
1254 } xkbExtensionDeviceNotify;
1255 #define sz_xkbExtensionDeviceNotify 32
1257 typedef struct _xkbEvent {
1260 xkbNewKeyboardNotify new_kbd;
1262 xkbStateNotify state;
1263 xkbControlsNotify ctrls;
1264 xkbIndicatorNotify indicators;
1265 xkbNamesNotify names;
1266 xkbCompatMapNotify compat;
1268 xkbActionMessage message;
1269 xkbAccessXNotify accessx;
1270 xkbExtensionDeviceNotify device;
1273 #define sz_xkbEvent 32
1281 #endif /* _XKBPROTO_H_ */