diff options
Diffstat (limited to 'XIproto.h')
-rw-r--r-- | XIproto.h | 342 |
1 files changed, 341 insertions, 1 deletions
@@ -72,7 +72,7 @@ SOFTWARE. #define numInputClasses 7 -#define IEVENTS 16 +#define IEVENTS 19 #define IERRORS 5 #define CLIENT_REQ 1 @@ -114,6 +114,9 @@ struct tmask #define XI_DeviceKeystateNotify 13 #define XI_DeviceButtonstateNotify 14 #define XI_DevicePresenceNotify 15 +#define XI_DeviceEnterNotify 16 +#define XI_DeviceLeaveNotify 17 +#define XI_PointerKeyboardPairingChangedNotify 18 /********************************************************* * @@ -156,6 +159,17 @@ struct tmask #define X_SetDeviceValuators 33 #define X_GetDeviceControl 34 #define X_ChangeDeviceControl 35 +#define X_QueryDevicePointer 36 +#define X_WarpDevicePointer 37 +#define X_ChangeDeviceCursor 38 +#define X_ChangePointerKeyboardPairing 39 +#define X_RegisterPairingClient 40 +#define X_GrabAccessControl 41 +#define X_ChangeWindowAccess 42 +#define X_QueryWindowAccess 43 +#define X_SetClientPointer 44 +#define X_GetClientPointer 45 +#define X_GetPairedPointer 46 /********************************************************* * @@ -1415,6 +1429,281 @@ typedef struct { /********************************************************** * + * QueryDevicePointer. + * + */ + +typedef struct { + CARD8 reqType; /* input extension major code */ + CARD8 ReqType; /* always X_QueryDevicePointer */ + CARD16 length B16; + Window win; + CARD8 deviceid; + CARD8 pad0; + CARD16 pad1 B16; +} xQueryDevicePointerReq; + + +typedef struct { + CARD8 repType; /* X_Reply */ + CARD8 RepType; /* always X_QueryDevicePointer */ + CARD16 sequenceNumber B16; + CARD32 length B32; + Window root B32; + Window child B32; + INT16 rootX B16; + INT16 rootY B16; + INT16 winX B16; + INT16 winY B16; + CARD16 mask B16; + BYTE sameScreen; + BYTE shared; /* sharing the core cursor? */ + CARD32 pad0 B32; +} xQueryDevicePointerReply; + + +/********************************************************** + * + * WarpDevicePointer. + * + */ + +typedef struct { + CARD8 reqType; /* input extension major code */ + CARD8 ReqType; /* always X_WarpDevicePointer */ + CARD16 length B16; + Window src_win B32; + Window dst_win B32; + INT16 src_x B16; + INT16 src_y B16; + CARD16 src_width B16; + CARD16 src_height B16; + INT16 dst_x B16; + INT16 dst_y B16; + CARD8 deviceid; + CARD8 pad0; + CARD16 pad1 B16; +} xWarpDevicePointerReq; + +/********************************************************** + * + * ChangeDeviceCursor. + * + */ + +typedef struct { + CARD8 reqType; /* input extension major code */ + CARD8 ReqType; /* always X_ChangeDeviceCursor */ + CARD16 length B16; + Window win B32; + Cursor cursor B32; + CARD8 deviceid; + CARD8 pad0; + CARD16 pad1; +} xChangeDeviceCursorReq; + +/********************************************************** + * + * ChangePointerKeyboardPairing. + * + */ + +typedef struct { + CARD8 reqType; /* input extension major code */ + CARD8 ReqType; /* always X_ChangePointerKeyboardPairing */ + CARD16 length B16; + CARD8 pointer; /* ID of pointer devices */ + CARD8 keyboard; /* ID of keyboard device */ + CARD16 pad0; +} xChangePointerKeyboardPairingReq; + +/********************************************************** + * + * RegisterPairingClient. + * + */ + +typedef struct { + CARD8 reqType; /* input extension major code */ + CARD8 ReqType; /* always X_RegisterPairingClient */ + CARD16 length B16; + CARD8 disable; /* True to disable registration */ + CARD8 pad0; + CARD16 pad1 B16; +} xRegisterPairingClientReq; + +typedef struct { + CARD8 repType; /* input extension major code */ + CARD8 RepType; /* always X_RegisterPairingClient */ + CARD16 sequenceNumber B16; + CARD32 length B32; /* 0 */ + CARD8 success; /* True on success, false otherwise */ + CARD8 pad0; + CARD16 pad1 B16; + CARD32 pad2 B32; + CARD32 pad3 B32; + CARD32 pad4 B32; + CARD32 pad5 B32; + CARD32 pad6 B32; +} xRegisterPairingClientReply; + +/********************************************************** + * + * GrabAccessControl. + * + */ + +typedef struct { + CARD8 reqType; /* input extension major code */ + CARD8 ReqType; /* always X_GrabAccessControl */ + CARD16 length B16; + BOOL ungrab; /* true if request is ungrab request */ + CARD8 pad0, pad1, pad2; +} xGrabAccessControlReq; + +typedef struct { + CARD8 repType; /* input extension major code */ + CARD8 RepType; /* always X_GrabAccessControl */ + CARD16 sequenceNumber B16; + CARD32 length B32; + CARD8 success; + CARD8 pad0, + pad1, + pad2; + CARD32 pad3 B32; + CARD32 pad4 B32; + CARD32 pad5 B32; + CARD32 pad6 B32; + CARD32 pad7 B32; +} xGrabAccessControlReply; + +/********************************************************** + * + * ChangeWindowAccess. + * + */ + +typedef struct { + CARD8 reqType; /* input extension major opcode */ + CARD8 ReqType; /* Always X_ChangeWindowAccess */ + CARD16 length B16; + Window win B32; + CARD8 npermit; /* number of devices for permit rule */ + CARD8 ndeny; /* number of devices for deny rule */ + CARD8 defaultRule; /* default rule */ + CARD8 clear; /* WindowAccessClearPerm, + WindowAccessClearDeny, + WindowAccessClearRule, + WindowAccessClearAll */ +} xChangeWindowAccessReq; + +/********************************************************** + * + * QueryWindowAccess + * + */ + +typedef struct { + CARD8 reqType; /* input extension major code */ + CARD8 ReqType; /* always X_QueryWindowAccess */ + CARD16 length B16; + Window win B32; +} xQueryWindowAccessReq; + +typedef struct { + CARD8 repType; /* input extension major opcode */ + CARD8 RepType; /* Always X_QueryWindowAccess */ + CARD16 sequenceNumber B16; + CARD32 length B32; + CARD8 defaultRule; /* default rule setting */ + CARD8 npermit; /* number of devices in permit */ + CARD8 ndeny; /* number of devices in deny */ + CARD8 pad0; + CARD32 pad1 B32; + CARD32 pad2 B32; + CARD32 pad3 B32; + CARD32 pad4 B32; + CARD32 pad5 B32; +} xQueryWindowAccessReply; + + + +/********************************************************** + * + * SetClientPointer. + * + */ + +typedef struct { + CARD8 reqType; + CARD8 ReqType; /* Always X_SetClientPointer */ + CARD16 length B16; + Window win B32; + CARD8 deviceid; + CARD8 pad0; + CARD16 pad1 B16; +} xSetClientPointerReq; + + +/********************************************************** + * + * GetClientPointer. + * + */ +typedef struct { + CARD8 reqType; + CARD8 ReqType; /* Always X_GetClientPointer */ + CARD16 length B16; + Window win B32; +} xGetClientPointerReq; + +typedef struct { + CARD8 repType; /* input extension major opcode */ + CARD8 RepType; /* Always X_GetClientPointer */ + CARD16 sequenceNumber B16; + CARD32 length B32; + BOOL set; /* client pointer is set */ + CARD8 deviceid; + CARD16 pad0 B16; + CARD32 pad1 B32; + CARD32 pad2 B32; + CARD32 pad3 B32; + CARD32 pad4 B32; + CARD32 pad5 B32; +} xGetClientPointerReply; + +/********************************************************** + * + * GetPairedPointer. + * + */ + +typedef struct { + CARD8 reqType; + CARD8 ReqType; /* Always X_GetPairedPointer */ + CARD16 length B16; + CARD8 deviceid; + CARD8 pad0; + CARD16 pad1 B16; +} xGetPairedPointerReq; + +typedef struct { + CARD8 repType; /* input extension major opcode */ + CARD8 RepType; /* Always X_GetClientPointer */ + CARD16 sequenceNumber B16; + CARD32 length B32; + BOOL paired; /* keyboard is paired */ + CARD8 deviceid; + CARD16 pad0 B16; + CARD32 pad1 B32; + CARD32 pad2 B32; + CARD32 pad3 B32; + CARD32 pad4 B32; + CARD32 pad5 B32; +} xGetPairedPointerReply; + +/********************************************************** + * * Input extension events. * * DeviceValuator @@ -1610,6 +1899,57 @@ typedef struct CARD32 pad06 B32; } devicePresenceNotify; + +/********************************************************** + * + * deviceEnterNotify. + * + */ + +typedef struct + { + BYTE type; + CARD8 deviceid; + CARD16 sequenceNumber B16; + Time time B32; + Window root B32; + Window event B32; + Window child B32; + INT16 rootX B16; + INT16 rootY B16; + INT16 eventX B16; + INT16 eventY B16; + KeyButMask state B16; + BYTE mode; + BYTE flags; + } deviceEnterNotify; + +typedef deviceEnterNotify deviceLeaveNotify; + +/********************************************************** + * + * pairingChangedNotify. + * + */ + +typedef struct + { + BYTE type; + BYTE pad00; + CARD16 sequenceNumber B16; + Time time B32; + CARD8 pointer; + CARD8 keyboard; + CARD16 pad0; + CARD32 pad1; + CARD32 pad2; + CARD32 pad3; + CARD32 pad4; + CARD32 pad5; + CARD32 pad6; + } pairingChangedNotify; + + #undef Window #undef Time #undef KeyCode |