comparison CSP2/CSP2_env/env-d9b9114564458d9d-741b3de822f2aaca6c6caa4325c4afce/include/xcb/xinput.h @ 69:33d812a61356

planemo upload commit 2e9511a184a1ca667c7be0c6321a36dc4e3d116d
author jpayne
date Tue, 18 Mar 2025 17:55:14 -0400
parents
children
comparison
equal deleted inserted replaced
67:0e9998148a16 69:33d812a61356
1 /*
2 * This file generated automatically from xinput.xml by c_client.py.
3 * Edit at your peril.
4 */
5
6 /**
7 * @defgroup XCB_Input_API XCB Input API
8 * @brief Input XCB Protocol Implementation.
9 * @{
10 **/
11
12 #ifndef __XINPUT_H
13 #define __XINPUT_H
14
15 #include "xcb.h"
16 #include "xfixes.h"
17
18 #ifdef __cplusplus
19 extern "C" {
20 #endif
21
22 #define XCB_INPUT_MAJOR_VERSION 2
23 #define XCB_INPUT_MINOR_VERSION 4
24
25 extern xcb_extension_t xcb_input_id;
26
27 typedef uint32_t xcb_input_event_class_t;
28
29 /**
30 * @brief xcb_input_event_class_iterator_t
31 **/
32 typedef struct xcb_input_event_class_iterator_t {
33 xcb_input_event_class_t *data;
34 int rem;
35 int index;
36 } xcb_input_event_class_iterator_t;
37
38 typedef uint8_t xcb_input_key_code_t;
39
40 /**
41 * @brief xcb_input_key_code_iterator_t
42 **/
43 typedef struct xcb_input_key_code_iterator_t {
44 xcb_input_key_code_t *data;
45 int rem;
46 int index;
47 } xcb_input_key_code_iterator_t;
48
49 typedef uint16_t xcb_input_device_id_t;
50
51 /**
52 * @brief xcb_input_device_id_iterator_t
53 **/
54 typedef struct xcb_input_device_id_iterator_t {
55 xcb_input_device_id_t *data;
56 int rem;
57 int index;
58 } xcb_input_device_id_iterator_t;
59
60 typedef int32_t xcb_input_fp1616_t;
61
62 /**
63 * @brief xcb_input_fp1616_iterator_t
64 **/
65 typedef struct xcb_input_fp1616_iterator_t {
66 xcb_input_fp1616_t *data;
67 int rem;
68 int index;
69 } xcb_input_fp1616_iterator_t;
70
71 /**
72 * @brief xcb_input_fp3232_t
73 **/
74 typedef struct xcb_input_fp3232_t {
75 int32_t integral;
76 uint32_t frac;
77 } xcb_input_fp3232_t;
78
79 /**
80 * @brief xcb_input_fp3232_iterator_t
81 **/
82 typedef struct xcb_input_fp3232_iterator_t {
83 xcb_input_fp3232_t *data;
84 int rem;
85 int index;
86 } xcb_input_fp3232_iterator_t;
87
88 /**
89 * @brief xcb_input_get_extension_version_cookie_t
90 **/
91 typedef struct xcb_input_get_extension_version_cookie_t {
92 unsigned int sequence;
93 } xcb_input_get_extension_version_cookie_t;
94
95 /** Opcode for xcb_input_get_extension_version. */
96 #define XCB_INPUT_GET_EXTENSION_VERSION 1
97
98 /**
99 * @brief xcb_input_get_extension_version_request_t
100 **/
101 typedef struct xcb_input_get_extension_version_request_t {
102 uint8_t major_opcode;
103 uint8_t minor_opcode;
104 uint16_t length;
105 uint16_t name_len;
106 uint8_t pad0[2];
107 } xcb_input_get_extension_version_request_t;
108
109 /**
110 * @brief xcb_input_get_extension_version_reply_t
111 **/
112 typedef struct xcb_input_get_extension_version_reply_t {
113 uint8_t response_type;
114 uint8_t xi_reply_type;
115 uint16_t sequence;
116 uint32_t length;
117 uint16_t server_major;
118 uint16_t server_minor;
119 uint8_t present;
120 uint8_t pad0[19];
121 } xcb_input_get_extension_version_reply_t;
122
123 typedef enum xcb_input_device_use_t {
124 XCB_INPUT_DEVICE_USE_IS_X_POINTER = 0,
125 XCB_INPUT_DEVICE_USE_IS_X_KEYBOARD = 1,
126 XCB_INPUT_DEVICE_USE_IS_X_EXTENSION_DEVICE = 2,
127 XCB_INPUT_DEVICE_USE_IS_X_EXTENSION_KEYBOARD = 3,
128 XCB_INPUT_DEVICE_USE_IS_X_EXTENSION_POINTER = 4
129 } xcb_input_device_use_t;
130
131 typedef enum xcb_input_input_class_t {
132 XCB_INPUT_INPUT_CLASS_KEY = 0,
133 XCB_INPUT_INPUT_CLASS_BUTTON = 1,
134 XCB_INPUT_INPUT_CLASS_VALUATOR = 2,
135 XCB_INPUT_INPUT_CLASS_FEEDBACK = 3,
136 XCB_INPUT_INPUT_CLASS_PROXIMITY = 4,
137 XCB_INPUT_INPUT_CLASS_FOCUS = 5,
138 XCB_INPUT_INPUT_CLASS_OTHER = 6
139 } xcb_input_input_class_t;
140
141 typedef enum xcb_input_valuator_mode_t {
142 XCB_INPUT_VALUATOR_MODE_RELATIVE = 0,
143 XCB_INPUT_VALUATOR_MODE_ABSOLUTE = 1
144 } xcb_input_valuator_mode_t;
145
146 /**
147 * @brief xcb_input_device_info_t
148 **/
149 typedef struct xcb_input_device_info_t {
150 xcb_atom_t device_type;
151 uint8_t device_id;
152 uint8_t num_class_info;
153 uint8_t device_use;
154 uint8_t pad0;
155 } xcb_input_device_info_t;
156
157 /**
158 * @brief xcb_input_device_info_iterator_t
159 **/
160 typedef struct xcb_input_device_info_iterator_t {
161 xcb_input_device_info_t *data;
162 int rem;
163 int index;
164 } xcb_input_device_info_iterator_t;
165
166 /**
167 * @brief xcb_input_key_info_t
168 **/
169 typedef struct xcb_input_key_info_t {
170 uint8_t class_id;
171 uint8_t len;
172 xcb_input_key_code_t min_keycode;
173 xcb_input_key_code_t max_keycode;
174 uint16_t num_keys;
175 uint8_t pad0[2];
176 } xcb_input_key_info_t;
177
178 /**
179 * @brief xcb_input_key_info_iterator_t
180 **/
181 typedef struct xcb_input_key_info_iterator_t {
182 xcb_input_key_info_t *data;
183 int rem;
184 int index;
185 } xcb_input_key_info_iterator_t;
186
187 /**
188 * @brief xcb_input_button_info_t
189 **/
190 typedef struct xcb_input_button_info_t {
191 uint8_t class_id;
192 uint8_t len;
193 uint16_t num_buttons;
194 } xcb_input_button_info_t;
195
196 /**
197 * @brief xcb_input_button_info_iterator_t
198 **/
199 typedef struct xcb_input_button_info_iterator_t {
200 xcb_input_button_info_t *data;
201 int rem;
202 int index;
203 } xcb_input_button_info_iterator_t;
204
205 /**
206 * @brief xcb_input_axis_info_t
207 **/
208 typedef struct xcb_input_axis_info_t {
209 uint32_t resolution;
210 int32_t minimum;
211 int32_t maximum;
212 } xcb_input_axis_info_t;
213
214 /**
215 * @brief xcb_input_axis_info_iterator_t
216 **/
217 typedef struct xcb_input_axis_info_iterator_t {
218 xcb_input_axis_info_t *data;
219 int rem;
220 int index;
221 } xcb_input_axis_info_iterator_t;
222
223 /**
224 * @brief xcb_input_valuator_info_t
225 **/
226 typedef struct xcb_input_valuator_info_t {
227 uint8_t class_id;
228 uint8_t len;
229 uint8_t axes_len;
230 uint8_t mode;
231 uint32_t motion_size;
232 } xcb_input_valuator_info_t;
233
234 /**
235 * @brief xcb_input_valuator_info_iterator_t
236 **/
237 typedef struct xcb_input_valuator_info_iterator_t {
238 xcb_input_valuator_info_t *data;
239 int rem;
240 int index;
241 } xcb_input_valuator_info_iterator_t;
242
243 /**
244 * @brief xcb_input_input_info_info_t
245 **/
246 typedef struct xcb_input_input_info_info_t {
247 struct {
248 xcb_input_key_code_t min_keycode;
249 xcb_input_key_code_t max_keycode;
250 uint16_t num_keys;
251 uint8_t pad0[2];
252 } key;
253 struct {
254 uint16_t num_buttons;
255 } button;
256 struct {
257 uint8_t axes_len;
258 uint8_t mode;
259 uint32_t motion_size;
260 xcb_input_axis_info_t *axes;
261 } valuator;
262 } xcb_input_input_info_info_t;
263
264 /**
265 * @brief xcb_input_input_info_t
266 **/
267 typedef struct xcb_input_input_info_t {
268 uint8_t class_id;
269 uint8_t len;
270 } xcb_input_input_info_t;
271
272 void *
273 xcb_input_input_info_info (const xcb_input_input_info_t *R);
274
275 /**
276 * @brief xcb_input_input_info_iterator_t
277 **/
278 typedef struct xcb_input_input_info_iterator_t {
279 xcb_input_input_info_t *data;
280 int rem;
281 int index;
282 } xcb_input_input_info_iterator_t;
283
284 /**
285 * @brief xcb_input_device_name_t
286 **/
287 typedef struct xcb_input_device_name_t {
288 uint8_t len;
289 } xcb_input_device_name_t;
290
291 /**
292 * @brief xcb_input_device_name_iterator_t
293 **/
294 typedef struct xcb_input_device_name_iterator_t {
295 xcb_input_device_name_t *data;
296 int rem;
297 int index;
298 } xcb_input_device_name_iterator_t;
299
300 /**
301 * @brief xcb_input_list_input_devices_cookie_t
302 **/
303 typedef struct xcb_input_list_input_devices_cookie_t {
304 unsigned int sequence;
305 } xcb_input_list_input_devices_cookie_t;
306
307 /** Opcode for xcb_input_list_input_devices. */
308 #define XCB_INPUT_LIST_INPUT_DEVICES 2
309
310 /**
311 * @brief xcb_input_list_input_devices_request_t
312 **/
313 typedef struct xcb_input_list_input_devices_request_t {
314 uint8_t major_opcode;
315 uint8_t minor_opcode;
316 uint16_t length;
317 } xcb_input_list_input_devices_request_t;
318
319 /**
320 * @brief xcb_input_list_input_devices_reply_t
321 **/
322 typedef struct xcb_input_list_input_devices_reply_t {
323 uint8_t response_type;
324 uint8_t xi_reply_type;
325 uint16_t sequence;
326 uint32_t length;
327 uint8_t devices_len;
328 uint8_t pad0[23];
329 } xcb_input_list_input_devices_reply_t;
330
331 typedef uint8_t xcb_input_event_type_base_t;
332
333 /**
334 * @brief xcb_input_event_type_base_iterator_t
335 **/
336 typedef struct xcb_input_event_type_base_iterator_t {
337 xcb_input_event_type_base_t *data;
338 int rem;
339 int index;
340 } xcb_input_event_type_base_iterator_t;
341
342 /**
343 * @brief xcb_input_input_class_info_t
344 **/
345 typedef struct xcb_input_input_class_info_t {
346 uint8_t class_id;
347 xcb_input_event_type_base_t event_type_base;
348 } xcb_input_input_class_info_t;
349
350 /**
351 * @brief xcb_input_input_class_info_iterator_t
352 **/
353 typedef struct xcb_input_input_class_info_iterator_t {
354 xcb_input_input_class_info_t *data;
355 int rem;
356 int index;
357 } xcb_input_input_class_info_iterator_t;
358
359 /**
360 * @brief xcb_input_open_device_cookie_t
361 **/
362 typedef struct xcb_input_open_device_cookie_t {
363 unsigned int sequence;
364 } xcb_input_open_device_cookie_t;
365
366 /** Opcode for xcb_input_open_device. */
367 #define XCB_INPUT_OPEN_DEVICE 3
368
369 /**
370 * @brief xcb_input_open_device_request_t
371 **/
372 typedef struct xcb_input_open_device_request_t {
373 uint8_t major_opcode;
374 uint8_t minor_opcode;
375 uint16_t length;
376 uint8_t device_id;
377 uint8_t pad0[3];
378 } xcb_input_open_device_request_t;
379
380 /**
381 * @brief xcb_input_open_device_reply_t
382 **/
383 typedef struct xcb_input_open_device_reply_t {
384 uint8_t response_type;
385 uint8_t xi_reply_type;
386 uint16_t sequence;
387 uint32_t length;
388 uint8_t num_classes;
389 uint8_t pad0[23];
390 } xcb_input_open_device_reply_t;
391
392 /** Opcode for xcb_input_close_device. */
393 #define XCB_INPUT_CLOSE_DEVICE 4
394
395 /**
396 * @brief xcb_input_close_device_request_t
397 **/
398 typedef struct xcb_input_close_device_request_t {
399 uint8_t major_opcode;
400 uint8_t minor_opcode;
401 uint16_t length;
402 uint8_t device_id;
403 uint8_t pad0[3];
404 } xcb_input_close_device_request_t;
405
406 /**
407 * @brief xcb_input_set_device_mode_cookie_t
408 **/
409 typedef struct xcb_input_set_device_mode_cookie_t {
410 unsigned int sequence;
411 } xcb_input_set_device_mode_cookie_t;
412
413 /** Opcode for xcb_input_set_device_mode. */
414 #define XCB_INPUT_SET_DEVICE_MODE 5
415
416 /**
417 * @brief xcb_input_set_device_mode_request_t
418 **/
419 typedef struct xcb_input_set_device_mode_request_t {
420 uint8_t major_opcode;
421 uint8_t minor_opcode;
422 uint16_t length;
423 uint8_t device_id;
424 uint8_t mode;
425 uint8_t pad0[2];
426 } xcb_input_set_device_mode_request_t;
427
428 /**
429 * @brief xcb_input_set_device_mode_reply_t
430 **/
431 typedef struct xcb_input_set_device_mode_reply_t {
432 uint8_t response_type;
433 uint8_t xi_reply_type;
434 uint16_t sequence;
435 uint32_t length;
436 uint8_t status;
437 uint8_t pad0[23];
438 } xcb_input_set_device_mode_reply_t;
439
440 /** Opcode for xcb_input_select_extension_event. */
441 #define XCB_INPUT_SELECT_EXTENSION_EVENT 6
442
443 /**
444 * @brief xcb_input_select_extension_event_request_t
445 **/
446 typedef struct xcb_input_select_extension_event_request_t {
447 uint8_t major_opcode;
448 uint8_t minor_opcode;
449 uint16_t length;
450 xcb_window_t window;
451 uint16_t num_classes;
452 uint8_t pad0[2];
453 } xcb_input_select_extension_event_request_t;
454
455 /**
456 * @brief xcb_input_get_selected_extension_events_cookie_t
457 **/
458 typedef struct xcb_input_get_selected_extension_events_cookie_t {
459 unsigned int sequence;
460 } xcb_input_get_selected_extension_events_cookie_t;
461
462 /** Opcode for xcb_input_get_selected_extension_events. */
463 #define XCB_INPUT_GET_SELECTED_EXTENSION_EVENTS 7
464
465 /**
466 * @brief xcb_input_get_selected_extension_events_request_t
467 **/
468 typedef struct xcb_input_get_selected_extension_events_request_t {
469 uint8_t major_opcode;
470 uint8_t minor_opcode;
471 uint16_t length;
472 xcb_window_t window;
473 } xcb_input_get_selected_extension_events_request_t;
474
475 /**
476 * @brief xcb_input_get_selected_extension_events_reply_t
477 **/
478 typedef struct xcb_input_get_selected_extension_events_reply_t {
479 uint8_t response_type;
480 uint8_t xi_reply_type;
481 uint16_t sequence;
482 uint32_t length;
483 uint16_t num_this_classes;
484 uint16_t num_all_classes;
485 uint8_t pad0[20];
486 } xcb_input_get_selected_extension_events_reply_t;
487
488 typedef enum xcb_input_propagate_mode_t {
489 XCB_INPUT_PROPAGATE_MODE_ADD_TO_LIST = 0,
490 XCB_INPUT_PROPAGATE_MODE_DELETE_FROM_LIST = 1
491 } xcb_input_propagate_mode_t;
492
493 /** Opcode for xcb_input_change_device_dont_propagate_list. */
494 #define XCB_INPUT_CHANGE_DEVICE_DONT_PROPAGATE_LIST 8
495
496 /**
497 * @brief xcb_input_change_device_dont_propagate_list_request_t
498 **/
499 typedef struct xcb_input_change_device_dont_propagate_list_request_t {
500 uint8_t major_opcode;
501 uint8_t minor_opcode;
502 uint16_t length;
503 xcb_window_t window;
504 uint16_t num_classes;
505 uint8_t mode;
506 uint8_t pad0;
507 } xcb_input_change_device_dont_propagate_list_request_t;
508
509 /**
510 * @brief xcb_input_get_device_dont_propagate_list_cookie_t
511 **/
512 typedef struct xcb_input_get_device_dont_propagate_list_cookie_t {
513 unsigned int sequence;
514 } xcb_input_get_device_dont_propagate_list_cookie_t;
515
516 /** Opcode for xcb_input_get_device_dont_propagate_list. */
517 #define XCB_INPUT_GET_DEVICE_DONT_PROPAGATE_LIST 9
518
519 /**
520 * @brief xcb_input_get_device_dont_propagate_list_request_t
521 **/
522 typedef struct xcb_input_get_device_dont_propagate_list_request_t {
523 uint8_t major_opcode;
524 uint8_t minor_opcode;
525 uint16_t length;
526 xcb_window_t window;
527 } xcb_input_get_device_dont_propagate_list_request_t;
528
529 /**
530 * @brief xcb_input_get_device_dont_propagate_list_reply_t
531 **/
532 typedef struct xcb_input_get_device_dont_propagate_list_reply_t {
533 uint8_t response_type;
534 uint8_t xi_reply_type;
535 uint16_t sequence;
536 uint32_t length;
537 uint16_t num_classes;
538 uint8_t pad0[22];
539 } xcb_input_get_device_dont_propagate_list_reply_t;
540
541 /**
542 * @brief xcb_input_device_time_coord_t
543 **/
544 typedef struct xcb_input_device_time_coord_t {
545 xcb_timestamp_t time;
546 } xcb_input_device_time_coord_t;
547
548 /**
549 * @brief xcb_input_device_time_coord_iterator_t
550 **/
551 typedef struct xcb_input_device_time_coord_iterator_t {
552 xcb_input_device_time_coord_t *data;
553 int rem;
554 int index;
555 uint8_t num_axes; /**< */
556 } xcb_input_device_time_coord_iterator_t;
557
558 /**
559 * @brief xcb_input_get_device_motion_events_cookie_t
560 **/
561 typedef struct xcb_input_get_device_motion_events_cookie_t {
562 unsigned int sequence;
563 } xcb_input_get_device_motion_events_cookie_t;
564
565 /** Opcode for xcb_input_get_device_motion_events. */
566 #define XCB_INPUT_GET_DEVICE_MOTION_EVENTS 10
567
568 /**
569 * @brief xcb_input_get_device_motion_events_request_t
570 **/
571 typedef struct xcb_input_get_device_motion_events_request_t {
572 uint8_t major_opcode;
573 uint8_t minor_opcode;
574 uint16_t length;
575 xcb_timestamp_t start;
576 xcb_timestamp_t stop;
577 uint8_t device_id;
578 uint8_t pad0[3];
579 } xcb_input_get_device_motion_events_request_t;
580
581 /**
582 * @brief xcb_input_get_device_motion_events_reply_t
583 **/
584 typedef struct xcb_input_get_device_motion_events_reply_t {
585 uint8_t response_type;
586 uint8_t xi_reply_type;
587 uint16_t sequence;
588 uint32_t length;
589 uint32_t num_events;
590 uint8_t num_axes;
591 uint8_t device_mode;
592 uint8_t pad0[18];
593 } xcb_input_get_device_motion_events_reply_t;
594
595 /**
596 * @brief xcb_input_change_keyboard_device_cookie_t
597 **/
598 typedef struct xcb_input_change_keyboard_device_cookie_t {
599 unsigned int sequence;
600 } xcb_input_change_keyboard_device_cookie_t;
601
602 /** Opcode for xcb_input_change_keyboard_device. */
603 #define XCB_INPUT_CHANGE_KEYBOARD_DEVICE 11
604
605 /**
606 * @brief xcb_input_change_keyboard_device_request_t
607 **/
608 typedef struct xcb_input_change_keyboard_device_request_t {
609 uint8_t major_opcode;
610 uint8_t minor_opcode;
611 uint16_t length;
612 uint8_t device_id;
613 uint8_t pad0[3];
614 } xcb_input_change_keyboard_device_request_t;
615
616 /**
617 * @brief xcb_input_change_keyboard_device_reply_t
618 **/
619 typedef struct xcb_input_change_keyboard_device_reply_t {
620 uint8_t response_type;
621 uint8_t xi_reply_type;
622 uint16_t sequence;
623 uint32_t length;
624 uint8_t status;
625 uint8_t pad0[23];
626 } xcb_input_change_keyboard_device_reply_t;
627
628 /**
629 * @brief xcb_input_change_pointer_device_cookie_t
630 **/
631 typedef struct xcb_input_change_pointer_device_cookie_t {
632 unsigned int sequence;
633 } xcb_input_change_pointer_device_cookie_t;
634
635 /** Opcode for xcb_input_change_pointer_device. */
636 #define XCB_INPUT_CHANGE_POINTER_DEVICE 12
637
638 /**
639 * @brief xcb_input_change_pointer_device_request_t
640 **/
641 typedef struct xcb_input_change_pointer_device_request_t {
642 uint8_t major_opcode;
643 uint8_t minor_opcode;
644 uint16_t length;
645 uint8_t x_axis;
646 uint8_t y_axis;
647 uint8_t device_id;
648 uint8_t pad0;
649 } xcb_input_change_pointer_device_request_t;
650
651 /**
652 * @brief xcb_input_change_pointer_device_reply_t
653 **/
654 typedef struct xcb_input_change_pointer_device_reply_t {
655 uint8_t response_type;
656 uint8_t xi_reply_type;
657 uint16_t sequence;
658 uint32_t length;
659 uint8_t status;
660 uint8_t pad0[23];
661 } xcb_input_change_pointer_device_reply_t;
662
663 /**
664 * @brief xcb_input_grab_device_cookie_t
665 **/
666 typedef struct xcb_input_grab_device_cookie_t {
667 unsigned int sequence;
668 } xcb_input_grab_device_cookie_t;
669
670 /** Opcode for xcb_input_grab_device. */
671 #define XCB_INPUT_GRAB_DEVICE 13
672
673 /**
674 * @brief xcb_input_grab_device_request_t
675 **/
676 typedef struct xcb_input_grab_device_request_t {
677 uint8_t major_opcode;
678 uint8_t minor_opcode;
679 uint16_t length;
680 xcb_window_t grab_window;
681 xcb_timestamp_t time;
682 uint16_t num_classes;
683 uint8_t this_device_mode;
684 uint8_t other_device_mode;
685 uint8_t owner_events;
686 uint8_t device_id;
687 uint8_t pad0[2];
688 } xcb_input_grab_device_request_t;
689
690 /**
691 * @brief xcb_input_grab_device_reply_t
692 **/
693 typedef struct xcb_input_grab_device_reply_t {
694 uint8_t response_type;
695 uint8_t xi_reply_type;
696 uint16_t sequence;
697 uint32_t length;
698 uint8_t status;
699 uint8_t pad0[23];
700 } xcb_input_grab_device_reply_t;
701
702 /** Opcode for xcb_input_ungrab_device. */
703 #define XCB_INPUT_UNGRAB_DEVICE 14
704
705 /**
706 * @brief xcb_input_ungrab_device_request_t
707 **/
708 typedef struct xcb_input_ungrab_device_request_t {
709 uint8_t major_opcode;
710 uint8_t minor_opcode;
711 uint16_t length;
712 xcb_timestamp_t time;
713 uint8_t device_id;
714 uint8_t pad0[3];
715 } xcb_input_ungrab_device_request_t;
716
717 typedef enum xcb_input_modifier_device_t {
718 XCB_INPUT_MODIFIER_DEVICE_USE_X_KEYBOARD = 255
719 } xcb_input_modifier_device_t;
720
721 /** Opcode for xcb_input_grab_device_key. */
722 #define XCB_INPUT_GRAB_DEVICE_KEY 15
723
724 /**
725 * @brief xcb_input_grab_device_key_request_t
726 **/
727 typedef struct xcb_input_grab_device_key_request_t {
728 uint8_t major_opcode;
729 uint8_t minor_opcode;
730 uint16_t length;
731 xcb_window_t grab_window;
732 uint16_t num_classes;
733 uint16_t modifiers;
734 uint8_t modifier_device;
735 uint8_t grabbed_device;
736 uint8_t key;
737 uint8_t this_device_mode;
738 uint8_t other_device_mode;
739 uint8_t owner_events;
740 uint8_t pad0[2];
741 } xcb_input_grab_device_key_request_t;
742
743 /** Opcode for xcb_input_ungrab_device_key. */
744 #define XCB_INPUT_UNGRAB_DEVICE_KEY 16
745
746 /**
747 * @brief xcb_input_ungrab_device_key_request_t
748 **/
749 typedef struct xcb_input_ungrab_device_key_request_t {
750 uint8_t major_opcode;
751 uint8_t minor_opcode;
752 uint16_t length;
753 xcb_window_t grabWindow;
754 uint16_t modifiers;
755 uint8_t modifier_device;
756 uint8_t key;
757 uint8_t grabbed_device;
758 } xcb_input_ungrab_device_key_request_t;
759
760 /** Opcode for xcb_input_grab_device_button. */
761 #define XCB_INPUT_GRAB_DEVICE_BUTTON 17
762
763 /**
764 * @brief xcb_input_grab_device_button_request_t
765 **/
766 typedef struct xcb_input_grab_device_button_request_t {
767 uint8_t major_opcode;
768 uint8_t minor_opcode;
769 uint16_t length;
770 xcb_window_t grab_window;
771 uint8_t grabbed_device;
772 uint8_t modifier_device;
773 uint16_t num_classes;
774 uint16_t modifiers;
775 uint8_t this_device_mode;
776 uint8_t other_device_mode;
777 uint8_t button;
778 uint8_t owner_events;
779 uint8_t pad0[2];
780 } xcb_input_grab_device_button_request_t;
781
782 /** Opcode for xcb_input_ungrab_device_button. */
783 #define XCB_INPUT_UNGRAB_DEVICE_BUTTON 18
784
785 /**
786 * @brief xcb_input_ungrab_device_button_request_t
787 **/
788 typedef struct xcb_input_ungrab_device_button_request_t {
789 uint8_t major_opcode;
790 uint8_t minor_opcode;
791 uint16_t length;
792 xcb_window_t grab_window;
793 uint16_t modifiers;
794 uint8_t modifier_device;
795 uint8_t button;
796 uint8_t grabbed_device;
797 uint8_t pad0[3];
798 } xcb_input_ungrab_device_button_request_t;
799
800 typedef enum xcb_input_device_input_mode_t {
801 XCB_INPUT_DEVICE_INPUT_MODE_ASYNC_THIS_DEVICE = 0,
802 XCB_INPUT_DEVICE_INPUT_MODE_SYNC_THIS_DEVICE = 1,
803 XCB_INPUT_DEVICE_INPUT_MODE_REPLAY_THIS_DEVICE = 2,
804 XCB_INPUT_DEVICE_INPUT_MODE_ASYNC_OTHER_DEVICES = 3,
805 XCB_INPUT_DEVICE_INPUT_MODE_ASYNC_ALL = 4,
806 XCB_INPUT_DEVICE_INPUT_MODE_SYNC_ALL = 5
807 } xcb_input_device_input_mode_t;
808
809 /** Opcode for xcb_input_allow_device_events. */
810 #define XCB_INPUT_ALLOW_DEVICE_EVENTS 19
811
812 /**
813 * @brief xcb_input_allow_device_events_request_t
814 **/
815 typedef struct xcb_input_allow_device_events_request_t {
816 uint8_t major_opcode;
817 uint8_t minor_opcode;
818 uint16_t length;
819 xcb_timestamp_t time;
820 uint8_t mode;
821 uint8_t device_id;
822 uint8_t pad0[2];
823 } xcb_input_allow_device_events_request_t;
824
825 /**
826 * @brief xcb_input_get_device_focus_cookie_t
827 **/
828 typedef struct xcb_input_get_device_focus_cookie_t {
829 unsigned int sequence;
830 } xcb_input_get_device_focus_cookie_t;
831
832 /** Opcode for xcb_input_get_device_focus. */
833 #define XCB_INPUT_GET_DEVICE_FOCUS 20
834
835 /**
836 * @brief xcb_input_get_device_focus_request_t
837 **/
838 typedef struct xcb_input_get_device_focus_request_t {
839 uint8_t major_opcode;
840 uint8_t minor_opcode;
841 uint16_t length;
842 uint8_t device_id;
843 uint8_t pad0[3];
844 } xcb_input_get_device_focus_request_t;
845
846 /**
847 * @brief xcb_input_get_device_focus_reply_t
848 **/
849 typedef struct xcb_input_get_device_focus_reply_t {
850 uint8_t response_type;
851 uint8_t xi_reply_type;
852 uint16_t sequence;
853 uint32_t length;
854 xcb_window_t focus;
855 xcb_timestamp_t time;
856 uint8_t revert_to;
857 uint8_t pad0[15];
858 } xcb_input_get_device_focus_reply_t;
859
860 /** Opcode for xcb_input_set_device_focus. */
861 #define XCB_INPUT_SET_DEVICE_FOCUS 21
862
863 /**
864 * @brief xcb_input_set_device_focus_request_t
865 **/
866 typedef struct xcb_input_set_device_focus_request_t {
867 uint8_t major_opcode;
868 uint8_t minor_opcode;
869 uint16_t length;
870 xcb_window_t focus;
871 xcb_timestamp_t time;
872 uint8_t revert_to;
873 uint8_t device_id;
874 uint8_t pad0[2];
875 } xcb_input_set_device_focus_request_t;
876
877 typedef enum xcb_input_feedback_class_t {
878 XCB_INPUT_FEEDBACK_CLASS_KEYBOARD = 0,
879 XCB_INPUT_FEEDBACK_CLASS_POINTER = 1,
880 XCB_INPUT_FEEDBACK_CLASS_STRING = 2,
881 XCB_INPUT_FEEDBACK_CLASS_INTEGER = 3,
882 XCB_INPUT_FEEDBACK_CLASS_LED = 4,
883 XCB_INPUT_FEEDBACK_CLASS_BELL = 5
884 } xcb_input_feedback_class_t;
885
886 /**
887 * @brief xcb_input_kbd_feedback_state_t
888 **/
889 typedef struct xcb_input_kbd_feedback_state_t {
890 uint8_t class_id;
891 uint8_t feedback_id;
892 uint16_t len;
893 uint16_t pitch;
894 uint16_t duration;
895 uint32_t led_mask;
896 uint32_t led_values;
897 uint8_t global_auto_repeat;
898 uint8_t click;
899 uint8_t percent;
900 uint8_t pad0;
901 uint8_t auto_repeats[32];
902 } xcb_input_kbd_feedback_state_t;
903
904 /**
905 * @brief xcb_input_kbd_feedback_state_iterator_t
906 **/
907 typedef struct xcb_input_kbd_feedback_state_iterator_t {
908 xcb_input_kbd_feedback_state_t *data;
909 int rem;
910 int index;
911 } xcb_input_kbd_feedback_state_iterator_t;
912
913 /**
914 * @brief xcb_input_ptr_feedback_state_t
915 **/
916 typedef struct xcb_input_ptr_feedback_state_t {
917 uint8_t class_id;
918 uint8_t feedback_id;
919 uint16_t len;
920 uint8_t pad0[2];
921 uint16_t accel_num;
922 uint16_t accel_denom;
923 uint16_t threshold;
924 } xcb_input_ptr_feedback_state_t;
925
926 /**
927 * @brief xcb_input_ptr_feedback_state_iterator_t
928 **/
929 typedef struct xcb_input_ptr_feedback_state_iterator_t {
930 xcb_input_ptr_feedback_state_t *data;
931 int rem;
932 int index;
933 } xcb_input_ptr_feedback_state_iterator_t;
934
935 /**
936 * @brief xcb_input_integer_feedback_state_t
937 **/
938 typedef struct xcb_input_integer_feedback_state_t {
939 uint8_t class_id;
940 uint8_t feedback_id;
941 uint16_t len;
942 uint32_t resolution;
943 int32_t min_value;
944 int32_t max_value;
945 } xcb_input_integer_feedback_state_t;
946
947 /**
948 * @brief xcb_input_integer_feedback_state_iterator_t
949 **/
950 typedef struct xcb_input_integer_feedback_state_iterator_t {
951 xcb_input_integer_feedback_state_t *data;
952 int rem;
953 int index;
954 } xcb_input_integer_feedback_state_iterator_t;
955
956 /**
957 * @brief xcb_input_string_feedback_state_t
958 **/
959 typedef struct xcb_input_string_feedback_state_t {
960 uint8_t class_id;
961 uint8_t feedback_id;
962 uint16_t len;
963 uint16_t max_symbols;
964 uint16_t num_keysyms;
965 } xcb_input_string_feedback_state_t;
966
967 /**
968 * @brief xcb_input_string_feedback_state_iterator_t
969 **/
970 typedef struct xcb_input_string_feedback_state_iterator_t {
971 xcb_input_string_feedback_state_t *data;
972 int rem;
973 int index;
974 } xcb_input_string_feedback_state_iterator_t;
975
976 /**
977 * @brief xcb_input_bell_feedback_state_t
978 **/
979 typedef struct xcb_input_bell_feedback_state_t {
980 uint8_t class_id;
981 uint8_t feedback_id;
982 uint16_t len;
983 uint8_t percent;
984 uint8_t pad0[3];
985 uint16_t pitch;
986 uint16_t duration;
987 } xcb_input_bell_feedback_state_t;
988
989 /**
990 * @brief xcb_input_bell_feedback_state_iterator_t
991 **/
992 typedef struct xcb_input_bell_feedback_state_iterator_t {
993 xcb_input_bell_feedback_state_t *data;
994 int rem;
995 int index;
996 } xcb_input_bell_feedback_state_iterator_t;
997
998 /**
999 * @brief xcb_input_led_feedback_state_t
1000 **/
1001 typedef struct xcb_input_led_feedback_state_t {
1002 uint8_t class_id;
1003 uint8_t feedback_id;
1004 uint16_t len;
1005 uint32_t led_mask;
1006 uint32_t led_values;
1007 } xcb_input_led_feedback_state_t;
1008
1009 /**
1010 * @brief xcb_input_led_feedback_state_iterator_t
1011 **/
1012 typedef struct xcb_input_led_feedback_state_iterator_t {
1013 xcb_input_led_feedback_state_t *data;
1014 int rem;
1015 int index;
1016 } xcb_input_led_feedback_state_iterator_t;
1017
1018 /**
1019 * @brief xcb_input_feedback_state_data_t
1020 **/
1021 typedef struct xcb_input_feedback_state_data_t {
1022 struct {
1023 uint16_t pitch;
1024 uint16_t duration;
1025 uint32_t led_mask;
1026 uint32_t led_values;
1027 uint8_t global_auto_repeat;
1028 uint8_t click;
1029 uint8_t percent;
1030 uint8_t pad0;
1031 uint8_t auto_repeats[32];
1032 } keyboard;
1033 struct {
1034 uint8_t pad1[2];
1035 uint16_t accel_num;
1036 uint16_t accel_denom;
1037 uint16_t threshold;
1038 } pointer;
1039 struct {
1040 uint16_t max_symbols;
1041 uint16_t num_keysyms;
1042 xcb_keysym_t *keysyms;
1043 } string;
1044 struct {
1045 uint32_t resolution;
1046 int32_t min_value;
1047 int32_t max_value;
1048 } integer;
1049 struct {
1050 uint32_t led_mask;
1051 uint32_t led_values;
1052 } led;
1053 struct {
1054 uint8_t percent;
1055 uint8_t pad2[3];
1056 uint16_t pitch;
1057 uint16_t duration;
1058 } bell;
1059 } xcb_input_feedback_state_data_t;
1060
1061 /**
1062 * @brief xcb_input_feedback_state_t
1063 **/
1064 typedef struct xcb_input_feedback_state_t {
1065 uint8_t class_id;
1066 uint8_t feedback_id;
1067 uint16_t len;
1068 } xcb_input_feedback_state_t;
1069
1070 void *
1071 xcb_input_feedback_state_data (const xcb_input_feedback_state_t *R);
1072
1073 /**
1074 * @brief xcb_input_feedback_state_iterator_t
1075 **/
1076 typedef struct xcb_input_feedback_state_iterator_t {
1077 xcb_input_feedback_state_t *data;
1078 int rem;
1079 int index;
1080 } xcb_input_feedback_state_iterator_t;
1081
1082 /**
1083 * @brief xcb_input_get_feedback_control_cookie_t
1084 **/
1085 typedef struct xcb_input_get_feedback_control_cookie_t {
1086 unsigned int sequence;
1087 } xcb_input_get_feedback_control_cookie_t;
1088
1089 /** Opcode for xcb_input_get_feedback_control. */
1090 #define XCB_INPUT_GET_FEEDBACK_CONTROL 22
1091
1092 /**
1093 * @brief xcb_input_get_feedback_control_request_t
1094 **/
1095 typedef struct xcb_input_get_feedback_control_request_t {
1096 uint8_t major_opcode;
1097 uint8_t minor_opcode;
1098 uint16_t length;
1099 uint8_t device_id;
1100 uint8_t pad0[3];
1101 } xcb_input_get_feedback_control_request_t;
1102
1103 /**
1104 * @brief xcb_input_get_feedback_control_reply_t
1105 **/
1106 typedef struct xcb_input_get_feedback_control_reply_t {
1107 uint8_t response_type;
1108 uint8_t xi_reply_type;
1109 uint16_t sequence;
1110 uint32_t length;
1111 uint16_t num_feedbacks;
1112 uint8_t pad0[22];
1113 } xcb_input_get_feedback_control_reply_t;
1114
1115 /**
1116 * @brief xcb_input_kbd_feedback_ctl_t
1117 **/
1118 typedef struct xcb_input_kbd_feedback_ctl_t {
1119 uint8_t class_id;
1120 uint8_t feedback_id;
1121 uint16_t len;
1122 xcb_input_key_code_t key;
1123 uint8_t auto_repeat_mode;
1124 int8_t key_click_percent;
1125 int8_t bell_percent;
1126 int16_t bell_pitch;
1127 int16_t bell_duration;
1128 uint32_t led_mask;
1129 uint32_t led_values;
1130 } xcb_input_kbd_feedback_ctl_t;
1131
1132 /**
1133 * @brief xcb_input_kbd_feedback_ctl_iterator_t
1134 **/
1135 typedef struct xcb_input_kbd_feedback_ctl_iterator_t {
1136 xcb_input_kbd_feedback_ctl_t *data;
1137 int rem;
1138 int index;
1139 } xcb_input_kbd_feedback_ctl_iterator_t;
1140
1141 /**
1142 * @brief xcb_input_ptr_feedback_ctl_t
1143 **/
1144 typedef struct xcb_input_ptr_feedback_ctl_t {
1145 uint8_t class_id;
1146 uint8_t feedback_id;
1147 uint16_t len;
1148 uint8_t pad0[2];
1149 int16_t num;
1150 int16_t denom;
1151 int16_t threshold;
1152 } xcb_input_ptr_feedback_ctl_t;
1153
1154 /**
1155 * @brief xcb_input_ptr_feedback_ctl_iterator_t
1156 **/
1157 typedef struct xcb_input_ptr_feedback_ctl_iterator_t {
1158 xcb_input_ptr_feedback_ctl_t *data;
1159 int rem;
1160 int index;
1161 } xcb_input_ptr_feedback_ctl_iterator_t;
1162
1163 /**
1164 * @brief xcb_input_integer_feedback_ctl_t
1165 **/
1166 typedef struct xcb_input_integer_feedback_ctl_t {
1167 uint8_t class_id;
1168 uint8_t feedback_id;
1169 uint16_t len;
1170 int32_t int_to_display;
1171 } xcb_input_integer_feedback_ctl_t;
1172
1173 /**
1174 * @brief xcb_input_integer_feedback_ctl_iterator_t
1175 **/
1176 typedef struct xcb_input_integer_feedback_ctl_iterator_t {
1177 xcb_input_integer_feedback_ctl_t *data;
1178 int rem;
1179 int index;
1180 } xcb_input_integer_feedback_ctl_iterator_t;
1181
1182 /**
1183 * @brief xcb_input_string_feedback_ctl_t
1184 **/
1185 typedef struct xcb_input_string_feedback_ctl_t {
1186 uint8_t class_id;
1187 uint8_t feedback_id;
1188 uint16_t len;
1189 uint8_t pad0[2];
1190 uint16_t num_keysyms;
1191 } xcb_input_string_feedback_ctl_t;
1192
1193 /**
1194 * @brief xcb_input_string_feedback_ctl_iterator_t
1195 **/
1196 typedef struct xcb_input_string_feedback_ctl_iterator_t {
1197 xcb_input_string_feedback_ctl_t *data;
1198 int rem;
1199 int index;
1200 } xcb_input_string_feedback_ctl_iterator_t;
1201
1202 /**
1203 * @brief xcb_input_bell_feedback_ctl_t
1204 **/
1205 typedef struct xcb_input_bell_feedback_ctl_t {
1206 uint8_t class_id;
1207 uint8_t feedback_id;
1208 uint16_t len;
1209 int8_t percent;
1210 uint8_t pad0[3];
1211 int16_t pitch;
1212 int16_t duration;
1213 } xcb_input_bell_feedback_ctl_t;
1214
1215 /**
1216 * @brief xcb_input_bell_feedback_ctl_iterator_t
1217 **/
1218 typedef struct xcb_input_bell_feedback_ctl_iterator_t {
1219 xcb_input_bell_feedback_ctl_t *data;
1220 int rem;
1221 int index;
1222 } xcb_input_bell_feedback_ctl_iterator_t;
1223
1224 /**
1225 * @brief xcb_input_led_feedback_ctl_t
1226 **/
1227 typedef struct xcb_input_led_feedback_ctl_t {
1228 uint8_t class_id;
1229 uint8_t feedback_id;
1230 uint16_t len;
1231 uint32_t led_mask;
1232 uint32_t led_values;
1233 } xcb_input_led_feedback_ctl_t;
1234
1235 /**
1236 * @brief xcb_input_led_feedback_ctl_iterator_t
1237 **/
1238 typedef struct xcb_input_led_feedback_ctl_iterator_t {
1239 xcb_input_led_feedback_ctl_t *data;
1240 int rem;
1241 int index;
1242 } xcb_input_led_feedback_ctl_iterator_t;
1243
1244 /**
1245 * @brief xcb_input_feedback_ctl_data_t
1246 **/
1247 typedef struct xcb_input_feedback_ctl_data_t {
1248 struct {
1249 xcb_input_key_code_t key;
1250 uint8_t auto_repeat_mode;
1251 int8_t key_click_percent;
1252 int8_t bell_percent;
1253 int16_t bell_pitch;
1254 int16_t bell_duration;
1255 uint32_t led_mask;
1256 uint32_t led_values;
1257 } keyboard;
1258 struct {
1259 uint8_t pad0[2];
1260 int16_t num;
1261 int16_t denom;
1262 int16_t threshold;
1263 } pointer;
1264 struct {
1265 uint8_t pad1[2];
1266 uint16_t num_keysyms;
1267 xcb_keysym_t *keysyms;
1268 } string;
1269 struct {
1270 int32_t int_to_display;
1271 } integer;
1272 struct {
1273 uint32_t led_mask;
1274 uint32_t led_values;
1275 } led;
1276 struct {
1277 int8_t percent;
1278 uint8_t pad2[3];
1279 int16_t pitch;
1280 int16_t duration;
1281 } bell;
1282 } xcb_input_feedback_ctl_data_t;
1283
1284 /**
1285 * @brief xcb_input_feedback_ctl_t
1286 **/
1287 typedef struct xcb_input_feedback_ctl_t {
1288 uint8_t class_id;
1289 uint8_t feedback_id;
1290 uint16_t len;
1291 } xcb_input_feedback_ctl_t;
1292
1293 void *
1294 xcb_input_feedback_ctl_data (const xcb_input_feedback_ctl_t *R);
1295
1296 /**
1297 * @brief xcb_input_feedback_ctl_iterator_t
1298 **/
1299 typedef struct xcb_input_feedback_ctl_iterator_t {
1300 xcb_input_feedback_ctl_t *data;
1301 int rem;
1302 int index;
1303 } xcb_input_feedback_ctl_iterator_t;
1304
1305 typedef enum xcb_input_change_feedback_control_mask_t {
1306 XCB_INPUT_CHANGE_FEEDBACK_CONTROL_MASK_KEY_CLICK_PERCENT = 1,
1307 XCB_INPUT_CHANGE_FEEDBACK_CONTROL_MASK_PERCENT = 2,
1308 XCB_INPUT_CHANGE_FEEDBACK_CONTROL_MASK_PITCH = 4,
1309 XCB_INPUT_CHANGE_FEEDBACK_CONTROL_MASK_DURATION = 8,
1310 XCB_INPUT_CHANGE_FEEDBACK_CONTROL_MASK_LED = 16,
1311 XCB_INPUT_CHANGE_FEEDBACK_CONTROL_MASK_LED_MODE = 32,
1312 XCB_INPUT_CHANGE_FEEDBACK_CONTROL_MASK_KEY = 64,
1313 XCB_INPUT_CHANGE_FEEDBACK_CONTROL_MASK_AUTO_REPEAT_MODE = 128,
1314 XCB_INPUT_CHANGE_FEEDBACK_CONTROL_MASK_STRING = 1,
1315 XCB_INPUT_CHANGE_FEEDBACK_CONTROL_MASK_INTEGER = 1,
1316 XCB_INPUT_CHANGE_FEEDBACK_CONTROL_MASK_ACCEL_NUM = 1,
1317 XCB_INPUT_CHANGE_FEEDBACK_CONTROL_MASK_ACCEL_DENOM = 2,
1318 XCB_INPUT_CHANGE_FEEDBACK_CONTROL_MASK_THRESHOLD = 4
1319 } xcb_input_change_feedback_control_mask_t;
1320
1321 /** Opcode for xcb_input_change_feedback_control. */
1322 #define XCB_INPUT_CHANGE_FEEDBACK_CONTROL 23
1323
1324 /**
1325 * @brief xcb_input_change_feedback_control_request_t
1326 **/
1327 typedef struct xcb_input_change_feedback_control_request_t {
1328 uint8_t major_opcode;
1329 uint8_t minor_opcode;
1330 uint16_t length;
1331 uint32_t mask;
1332 uint8_t device_id;
1333 uint8_t feedback_id;
1334 uint8_t pad0[2];
1335 } xcb_input_change_feedback_control_request_t;
1336
1337 /**
1338 * @brief xcb_input_get_device_key_mapping_cookie_t
1339 **/
1340 typedef struct xcb_input_get_device_key_mapping_cookie_t {
1341 unsigned int sequence;
1342 } xcb_input_get_device_key_mapping_cookie_t;
1343
1344 /** Opcode for xcb_input_get_device_key_mapping. */
1345 #define XCB_INPUT_GET_DEVICE_KEY_MAPPING 24
1346
1347 /**
1348 * @brief xcb_input_get_device_key_mapping_request_t
1349 **/
1350 typedef struct xcb_input_get_device_key_mapping_request_t {
1351 uint8_t major_opcode;
1352 uint8_t minor_opcode;
1353 uint16_t length;
1354 uint8_t device_id;
1355 xcb_input_key_code_t first_keycode;
1356 uint8_t count;
1357 uint8_t pad0;
1358 } xcb_input_get_device_key_mapping_request_t;
1359
1360 /**
1361 * @brief xcb_input_get_device_key_mapping_reply_t
1362 **/
1363 typedef struct xcb_input_get_device_key_mapping_reply_t {
1364 uint8_t response_type;
1365 uint8_t xi_reply_type;
1366 uint16_t sequence;
1367 uint32_t length;
1368 uint8_t keysyms_per_keycode;
1369 uint8_t pad0[23];
1370 } xcb_input_get_device_key_mapping_reply_t;
1371
1372 /** Opcode for xcb_input_change_device_key_mapping. */
1373 #define XCB_INPUT_CHANGE_DEVICE_KEY_MAPPING 25
1374
1375 /**
1376 * @brief xcb_input_change_device_key_mapping_request_t
1377 **/
1378 typedef struct xcb_input_change_device_key_mapping_request_t {
1379 uint8_t major_opcode;
1380 uint8_t minor_opcode;
1381 uint16_t length;
1382 uint8_t device_id;
1383 xcb_input_key_code_t first_keycode;
1384 uint8_t keysyms_per_keycode;
1385 uint8_t keycode_count;
1386 } xcb_input_change_device_key_mapping_request_t;
1387
1388 /**
1389 * @brief xcb_input_get_device_modifier_mapping_cookie_t
1390 **/
1391 typedef struct xcb_input_get_device_modifier_mapping_cookie_t {
1392 unsigned int sequence;
1393 } xcb_input_get_device_modifier_mapping_cookie_t;
1394
1395 /** Opcode for xcb_input_get_device_modifier_mapping. */
1396 #define XCB_INPUT_GET_DEVICE_MODIFIER_MAPPING 26
1397
1398 /**
1399 * @brief xcb_input_get_device_modifier_mapping_request_t
1400 **/
1401 typedef struct xcb_input_get_device_modifier_mapping_request_t {
1402 uint8_t major_opcode;
1403 uint8_t minor_opcode;
1404 uint16_t length;
1405 uint8_t device_id;
1406 uint8_t pad0[3];
1407 } xcb_input_get_device_modifier_mapping_request_t;
1408
1409 /**
1410 * @brief xcb_input_get_device_modifier_mapping_reply_t
1411 **/
1412 typedef struct xcb_input_get_device_modifier_mapping_reply_t {
1413 uint8_t response_type;
1414 uint8_t xi_reply_type;
1415 uint16_t sequence;
1416 uint32_t length;
1417 uint8_t keycodes_per_modifier;
1418 uint8_t pad0[23];
1419 } xcb_input_get_device_modifier_mapping_reply_t;
1420
1421 /**
1422 * @brief xcb_input_set_device_modifier_mapping_cookie_t
1423 **/
1424 typedef struct xcb_input_set_device_modifier_mapping_cookie_t {
1425 unsigned int sequence;
1426 } xcb_input_set_device_modifier_mapping_cookie_t;
1427
1428 /** Opcode for xcb_input_set_device_modifier_mapping. */
1429 #define XCB_INPUT_SET_DEVICE_MODIFIER_MAPPING 27
1430
1431 /**
1432 * @brief xcb_input_set_device_modifier_mapping_request_t
1433 **/
1434 typedef struct xcb_input_set_device_modifier_mapping_request_t {
1435 uint8_t major_opcode;
1436 uint8_t minor_opcode;
1437 uint16_t length;
1438 uint8_t device_id;
1439 uint8_t keycodes_per_modifier;
1440 uint8_t pad0[2];
1441 } xcb_input_set_device_modifier_mapping_request_t;
1442
1443 /**
1444 * @brief xcb_input_set_device_modifier_mapping_reply_t
1445 **/
1446 typedef struct xcb_input_set_device_modifier_mapping_reply_t {
1447 uint8_t response_type;
1448 uint8_t xi_reply_type;
1449 uint16_t sequence;
1450 uint32_t length;
1451 uint8_t status;
1452 uint8_t pad0[23];
1453 } xcb_input_set_device_modifier_mapping_reply_t;
1454
1455 /**
1456 * @brief xcb_input_get_device_button_mapping_cookie_t
1457 **/
1458 typedef struct xcb_input_get_device_button_mapping_cookie_t {
1459 unsigned int sequence;
1460 } xcb_input_get_device_button_mapping_cookie_t;
1461
1462 /** Opcode for xcb_input_get_device_button_mapping. */
1463 #define XCB_INPUT_GET_DEVICE_BUTTON_MAPPING 28
1464
1465 /**
1466 * @brief xcb_input_get_device_button_mapping_request_t
1467 **/
1468 typedef struct xcb_input_get_device_button_mapping_request_t {
1469 uint8_t major_opcode;
1470 uint8_t minor_opcode;
1471 uint16_t length;
1472 uint8_t device_id;
1473 uint8_t pad0[3];
1474 } xcb_input_get_device_button_mapping_request_t;
1475
1476 /**
1477 * @brief xcb_input_get_device_button_mapping_reply_t
1478 **/
1479 typedef struct xcb_input_get_device_button_mapping_reply_t {
1480 uint8_t response_type;
1481 uint8_t xi_reply_type;
1482 uint16_t sequence;
1483 uint32_t length;
1484 uint8_t map_size;
1485 uint8_t pad0[23];
1486 } xcb_input_get_device_button_mapping_reply_t;
1487
1488 /**
1489 * @brief xcb_input_set_device_button_mapping_cookie_t
1490 **/
1491 typedef struct xcb_input_set_device_button_mapping_cookie_t {
1492 unsigned int sequence;
1493 } xcb_input_set_device_button_mapping_cookie_t;
1494
1495 /** Opcode for xcb_input_set_device_button_mapping. */
1496 #define XCB_INPUT_SET_DEVICE_BUTTON_MAPPING 29
1497
1498 /**
1499 * @brief xcb_input_set_device_button_mapping_request_t
1500 **/
1501 typedef struct xcb_input_set_device_button_mapping_request_t {
1502 uint8_t major_opcode;
1503 uint8_t minor_opcode;
1504 uint16_t length;
1505 uint8_t device_id;
1506 uint8_t map_size;
1507 uint8_t pad0[2];
1508 } xcb_input_set_device_button_mapping_request_t;
1509
1510 /**
1511 * @brief xcb_input_set_device_button_mapping_reply_t
1512 **/
1513 typedef struct xcb_input_set_device_button_mapping_reply_t {
1514 uint8_t response_type;
1515 uint8_t xi_reply_type;
1516 uint16_t sequence;
1517 uint32_t length;
1518 uint8_t status;
1519 uint8_t pad0[23];
1520 } xcb_input_set_device_button_mapping_reply_t;
1521
1522 /**
1523 * @brief xcb_input_key_state_t
1524 **/
1525 typedef struct xcb_input_key_state_t {
1526 uint8_t class_id;
1527 uint8_t len;
1528 uint8_t num_keys;
1529 uint8_t pad0;
1530 uint8_t keys[32];
1531 } xcb_input_key_state_t;
1532
1533 /**
1534 * @brief xcb_input_key_state_iterator_t
1535 **/
1536 typedef struct xcb_input_key_state_iterator_t {
1537 xcb_input_key_state_t *data;
1538 int rem;
1539 int index;
1540 } xcb_input_key_state_iterator_t;
1541
1542 /**
1543 * @brief xcb_input_button_state_t
1544 **/
1545 typedef struct xcb_input_button_state_t {
1546 uint8_t class_id;
1547 uint8_t len;
1548 uint8_t num_buttons;
1549 uint8_t pad0;
1550 uint8_t buttons[32];
1551 } xcb_input_button_state_t;
1552
1553 /**
1554 * @brief xcb_input_button_state_iterator_t
1555 **/
1556 typedef struct xcb_input_button_state_iterator_t {
1557 xcb_input_button_state_t *data;
1558 int rem;
1559 int index;
1560 } xcb_input_button_state_iterator_t;
1561
1562 typedef enum xcb_input_valuator_state_mode_mask_t {
1563 XCB_INPUT_VALUATOR_STATE_MODE_MASK_DEVICE_MODE_ABSOLUTE = 1,
1564 XCB_INPUT_VALUATOR_STATE_MODE_MASK_OUT_OF_PROXIMITY = 2
1565 } xcb_input_valuator_state_mode_mask_t;
1566
1567 /**
1568 * @brief xcb_input_valuator_state_t
1569 **/
1570 typedef struct xcb_input_valuator_state_t {
1571 uint8_t class_id;
1572 uint8_t len;
1573 uint8_t num_valuators;
1574 uint8_t mode;
1575 } xcb_input_valuator_state_t;
1576
1577 /**
1578 * @brief xcb_input_valuator_state_iterator_t
1579 **/
1580 typedef struct xcb_input_valuator_state_iterator_t {
1581 xcb_input_valuator_state_t *data;
1582 int rem;
1583 int index;
1584 } xcb_input_valuator_state_iterator_t;
1585
1586 /**
1587 * @brief xcb_input_input_state_data_t
1588 **/
1589 typedef struct xcb_input_input_state_data_t {
1590 struct {
1591 uint8_t num_keys;
1592 uint8_t pad0;
1593 uint8_t keys[32];
1594 } key;
1595 struct {
1596 uint8_t num_buttons;
1597 uint8_t pad1;
1598 uint8_t buttons[32];
1599 } button;
1600 struct {
1601 uint8_t num_valuators;
1602 uint8_t mode;
1603 int32_t *valuators;
1604 } valuator;
1605 } xcb_input_input_state_data_t;
1606
1607 /**
1608 * @brief xcb_input_input_state_t
1609 **/
1610 typedef struct xcb_input_input_state_t {
1611 uint8_t class_id;
1612 uint8_t len;
1613 } xcb_input_input_state_t;
1614
1615 void *
1616 xcb_input_input_state_data (const xcb_input_input_state_t *R);
1617
1618 /**
1619 * @brief xcb_input_input_state_iterator_t
1620 **/
1621 typedef struct xcb_input_input_state_iterator_t {
1622 xcb_input_input_state_t *data;
1623 int rem;
1624 int index;
1625 } xcb_input_input_state_iterator_t;
1626
1627 /**
1628 * @brief xcb_input_query_device_state_cookie_t
1629 **/
1630 typedef struct xcb_input_query_device_state_cookie_t {
1631 unsigned int sequence;
1632 } xcb_input_query_device_state_cookie_t;
1633
1634 /** Opcode for xcb_input_query_device_state. */
1635 #define XCB_INPUT_QUERY_DEVICE_STATE 30
1636
1637 /**
1638 * @brief xcb_input_query_device_state_request_t
1639 **/
1640 typedef struct xcb_input_query_device_state_request_t {
1641 uint8_t major_opcode;
1642 uint8_t minor_opcode;
1643 uint16_t length;
1644 uint8_t device_id;
1645 uint8_t pad0[3];
1646 } xcb_input_query_device_state_request_t;
1647
1648 /**
1649 * @brief xcb_input_query_device_state_reply_t
1650 **/
1651 typedef struct xcb_input_query_device_state_reply_t {
1652 uint8_t response_type;
1653 uint8_t xi_reply_type;
1654 uint16_t sequence;
1655 uint32_t length;
1656 uint8_t num_classes;
1657 uint8_t pad0[23];
1658 } xcb_input_query_device_state_reply_t;
1659
1660 /** Opcode for xcb_input_device_bell. */
1661 #define XCB_INPUT_DEVICE_BELL 32
1662
1663 /**
1664 * @brief xcb_input_device_bell_request_t
1665 **/
1666 typedef struct xcb_input_device_bell_request_t {
1667 uint8_t major_opcode;
1668 uint8_t minor_opcode;
1669 uint16_t length;
1670 uint8_t device_id;
1671 uint8_t feedback_id;
1672 uint8_t feedback_class;
1673 int8_t percent;
1674 } xcb_input_device_bell_request_t;
1675
1676 /**
1677 * @brief xcb_input_set_device_valuators_cookie_t
1678 **/
1679 typedef struct xcb_input_set_device_valuators_cookie_t {
1680 unsigned int sequence;
1681 } xcb_input_set_device_valuators_cookie_t;
1682
1683 /** Opcode for xcb_input_set_device_valuators. */
1684 #define XCB_INPUT_SET_DEVICE_VALUATORS 33
1685
1686 /**
1687 * @brief xcb_input_set_device_valuators_request_t
1688 **/
1689 typedef struct xcb_input_set_device_valuators_request_t {
1690 uint8_t major_opcode;
1691 uint8_t minor_opcode;
1692 uint16_t length;
1693 uint8_t device_id;
1694 uint8_t first_valuator;
1695 uint8_t num_valuators;
1696 uint8_t pad0;
1697 } xcb_input_set_device_valuators_request_t;
1698
1699 /**
1700 * @brief xcb_input_set_device_valuators_reply_t
1701 **/
1702 typedef struct xcb_input_set_device_valuators_reply_t {
1703 uint8_t response_type;
1704 uint8_t xi_reply_type;
1705 uint16_t sequence;
1706 uint32_t length;
1707 uint8_t status;
1708 uint8_t pad0[23];
1709 } xcb_input_set_device_valuators_reply_t;
1710
1711 typedef enum xcb_input_device_control_t {
1712 XCB_INPUT_DEVICE_CONTROL_RESOLUTION = 1,
1713 XCB_INPUT_DEVICE_CONTROL_ABS_CALIB = 2,
1714 XCB_INPUT_DEVICE_CONTROL_CORE = 3,
1715 XCB_INPUT_DEVICE_CONTROL_ENABLE = 4,
1716 XCB_INPUT_DEVICE_CONTROL_ABS_AREA = 5
1717 } xcb_input_device_control_t;
1718
1719 /**
1720 * @brief xcb_input_device_resolution_state_t
1721 **/
1722 typedef struct xcb_input_device_resolution_state_t {
1723 uint16_t control_id;
1724 uint16_t len;
1725 uint32_t num_valuators;
1726 } xcb_input_device_resolution_state_t;
1727
1728 /**
1729 * @brief xcb_input_device_resolution_state_iterator_t
1730 **/
1731 typedef struct xcb_input_device_resolution_state_iterator_t {
1732 xcb_input_device_resolution_state_t *data;
1733 int rem;
1734 int index;
1735 } xcb_input_device_resolution_state_iterator_t;
1736
1737 /**
1738 * @brief xcb_input_device_abs_calib_state_t
1739 **/
1740 typedef struct xcb_input_device_abs_calib_state_t {
1741 uint16_t control_id;
1742 uint16_t len;
1743 int32_t min_x;
1744 int32_t max_x;
1745 int32_t min_y;
1746 int32_t max_y;
1747 uint32_t flip_x;
1748 uint32_t flip_y;
1749 uint32_t rotation;
1750 uint32_t button_threshold;
1751 } xcb_input_device_abs_calib_state_t;
1752
1753 /**
1754 * @brief xcb_input_device_abs_calib_state_iterator_t
1755 **/
1756 typedef struct xcb_input_device_abs_calib_state_iterator_t {
1757 xcb_input_device_abs_calib_state_t *data;
1758 int rem;
1759 int index;
1760 } xcb_input_device_abs_calib_state_iterator_t;
1761
1762 /**
1763 * @brief xcb_input_device_abs_area_state_t
1764 **/
1765 typedef struct xcb_input_device_abs_area_state_t {
1766 uint16_t control_id;
1767 uint16_t len;
1768 uint32_t offset_x;
1769 uint32_t offset_y;
1770 uint32_t width;
1771 uint32_t height;
1772 uint32_t screen;
1773 uint32_t following;
1774 } xcb_input_device_abs_area_state_t;
1775
1776 /**
1777 * @brief xcb_input_device_abs_area_state_iterator_t
1778 **/
1779 typedef struct xcb_input_device_abs_area_state_iterator_t {
1780 xcb_input_device_abs_area_state_t *data;
1781 int rem;
1782 int index;
1783 } xcb_input_device_abs_area_state_iterator_t;
1784
1785 /**
1786 * @brief xcb_input_device_core_state_t
1787 **/
1788 typedef struct xcb_input_device_core_state_t {
1789 uint16_t control_id;
1790 uint16_t len;
1791 uint8_t status;
1792 uint8_t iscore;
1793 uint8_t pad0[2];
1794 } xcb_input_device_core_state_t;
1795
1796 /**
1797 * @brief xcb_input_device_core_state_iterator_t
1798 **/
1799 typedef struct xcb_input_device_core_state_iterator_t {
1800 xcb_input_device_core_state_t *data;
1801 int rem;
1802 int index;
1803 } xcb_input_device_core_state_iterator_t;
1804
1805 /**
1806 * @brief xcb_input_device_enable_state_t
1807 **/
1808 typedef struct xcb_input_device_enable_state_t {
1809 uint16_t control_id;
1810 uint16_t len;
1811 uint8_t enable;
1812 uint8_t pad0[3];
1813 } xcb_input_device_enable_state_t;
1814
1815 /**
1816 * @brief xcb_input_device_enable_state_iterator_t
1817 **/
1818 typedef struct xcb_input_device_enable_state_iterator_t {
1819 xcb_input_device_enable_state_t *data;
1820 int rem;
1821 int index;
1822 } xcb_input_device_enable_state_iterator_t;
1823
1824 /**
1825 * @brief xcb_input_device_state_data_t
1826 **/
1827 typedef struct xcb_input_device_state_data_t {
1828 struct {
1829 uint32_t num_valuators;
1830 uint32_t *resolution_values;
1831 uint32_t *resolution_min;
1832 uint32_t *resolution_max;
1833 } resolution;
1834 struct {
1835 int32_t min_x;
1836 int32_t max_x;
1837 int32_t min_y;
1838 int32_t max_y;
1839 uint32_t flip_x;
1840 uint32_t flip_y;
1841 uint32_t rotation;
1842 uint32_t button_threshold;
1843 } abs_calib;
1844 struct {
1845 uint8_t status;
1846 uint8_t iscore;
1847 uint8_t pad0[2];
1848 } core;
1849 struct {
1850 uint8_t enable;
1851 uint8_t pad1[3];
1852 } enable;
1853 struct {
1854 uint32_t offset_x;
1855 uint32_t offset_y;
1856 uint32_t width;
1857 uint32_t height;
1858 uint32_t screen;
1859 uint32_t following;
1860 } abs_area;
1861 } xcb_input_device_state_data_t;
1862
1863 /**
1864 * @brief xcb_input_device_state_t
1865 **/
1866 typedef struct xcb_input_device_state_t {
1867 uint16_t control_id;
1868 uint16_t len;
1869 } xcb_input_device_state_t;
1870
1871 void *
1872 xcb_input_device_state_data (const xcb_input_device_state_t *R);
1873
1874 /**
1875 * @brief xcb_input_device_state_iterator_t
1876 **/
1877 typedef struct xcb_input_device_state_iterator_t {
1878 xcb_input_device_state_t *data;
1879 int rem;
1880 int index;
1881 } xcb_input_device_state_iterator_t;
1882
1883 /**
1884 * @brief xcb_input_get_device_control_cookie_t
1885 **/
1886 typedef struct xcb_input_get_device_control_cookie_t {
1887 unsigned int sequence;
1888 } xcb_input_get_device_control_cookie_t;
1889
1890 /** Opcode for xcb_input_get_device_control. */
1891 #define XCB_INPUT_GET_DEVICE_CONTROL 34
1892
1893 /**
1894 * @brief xcb_input_get_device_control_request_t
1895 **/
1896 typedef struct xcb_input_get_device_control_request_t {
1897 uint8_t major_opcode;
1898 uint8_t minor_opcode;
1899 uint16_t length;
1900 uint16_t control_id;
1901 uint8_t device_id;
1902 uint8_t pad0;
1903 } xcb_input_get_device_control_request_t;
1904
1905 /**
1906 * @brief xcb_input_get_device_control_reply_t
1907 **/
1908 typedef struct xcb_input_get_device_control_reply_t {
1909 uint8_t response_type;
1910 uint8_t xi_reply_type;
1911 uint16_t sequence;
1912 uint32_t length;
1913 uint8_t status;
1914 uint8_t pad0[23];
1915 } xcb_input_get_device_control_reply_t;
1916
1917 /**
1918 * @brief xcb_input_device_resolution_ctl_t
1919 **/
1920 typedef struct xcb_input_device_resolution_ctl_t {
1921 uint16_t control_id;
1922 uint16_t len;
1923 uint8_t first_valuator;
1924 uint8_t num_valuators;
1925 uint8_t pad0[2];
1926 } xcb_input_device_resolution_ctl_t;
1927
1928 /**
1929 * @brief xcb_input_device_resolution_ctl_iterator_t
1930 **/
1931 typedef struct xcb_input_device_resolution_ctl_iterator_t {
1932 xcb_input_device_resolution_ctl_t *data;
1933 int rem;
1934 int index;
1935 } xcb_input_device_resolution_ctl_iterator_t;
1936
1937 /**
1938 * @brief xcb_input_device_abs_calib_ctl_t
1939 **/
1940 typedef struct xcb_input_device_abs_calib_ctl_t {
1941 uint16_t control_id;
1942 uint16_t len;
1943 int32_t min_x;
1944 int32_t max_x;
1945 int32_t min_y;
1946 int32_t max_y;
1947 uint32_t flip_x;
1948 uint32_t flip_y;
1949 uint32_t rotation;
1950 uint32_t button_threshold;
1951 } xcb_input_device_abs_calib_ctl_t;
1952
1953 /**
1954 * @brief xcb_input_device_abs_calib_ctl_iterator_t
1955 **/
1956 typedef struct xcb_input_device_abs_calib_ctl_iterator_t {
1957 xcb_input_device_abs_calib_ctl_t *data;
1958 int rem;
1959 int index;
1960 } xcb_input_device_abs_calib_ctl_iterator_t;
1961
1962 /**
1963 * @brief xcb_input_device_abs_area_ctrl_t
1964 **/
1965 typedef struct xcb_input_device_abs_area_ctrl_t {
1966 uint16_t control_id;
1967 uint16_t len;
1968 uint32_t offset_x;
1969 uint32_t offset_y;
1970 int32_t width;
1971 int32_t height;
1972 int32_t screen;
1973 uint32_t following;
1974 } xcb_input_device_abs_area_ctrl_t;
1975
1976 /**
1977 * @brief xcb_input_device_abs_area_ctrl_iterator_t
1978 **/
1979 typedef struct xcb_input_device_abs_area_ctrl_iterator_t {
1980 xcb_input_device_abs_area_ctrl_t *data;
1981 int rem;
1982 int index;
1983 } xcb_input_device_abs_area_ctrl_iterator_t;
1984
1985 /**
1986 * @brief xcb_input_device_core_ctrl_t
1987 **/
1988 typedef struct xcb_input_device_core_ctrl_t {
1989 uint16_t control_id;
1990 uint16_t len;
1991 uint8_t status;
1992 uint8_t pad0[3];
1993 } xcb_input_device_core_ctrl_t;
1994
1995 /**
1996 * @brief xcb_input_device_core_ctrl_iterator_t
1997 **/
1998 typedef struct xcb_input_device_core_ctrl_iterator_t {
1999 xcb_input_device_core_ctrl_t *data;
2000 int rem;
2001 int index;
2002 } xcb_input_device_core_ctrl_iterator_t;
2003
2004 /**
2005 * @brief xcb_input_device_enable_ctrl_t
2006 **/
2007 typedef struct xcb_input_device_enable_ctrl_t {
2008 uint16_t control_id;
2009 uint16_t len;
2010 uint8_t enable;
2011 uint8_t pad0[3];
2012 } xcb_input_device_enable_ctrl_t;
2013
2014 /**
2015 * @brief xcb_input_device_enable_ctrl_iterator_t
2016 **/
2017 typedef struct xcb_input_device_enable_ctrl_iterator_t {
2018 xcb_input_device_enable_ctrl_t *data;
2019 int rem;
2020 int index;
2021 } xcb_input_device_enable_ctrl_iterator_t;
2022
2023 /**
2024 * @brief xcb_input_device_ctl_data_t
2025 **/
2026 typedef struct xcb_input_device_ctl_data_t {
2027 struct {
2028 uint8_t first_valuator;
2029 uint8_t num_valuators;
2030 uint8_t pad0[2];
2031 uint32_t *resolution_values;
2032 } resolution;
2033 struct {
2034 int32_t min_x;
2035 int32_t max_x;
2036 int32_t min_y;
2037 int32_t max_y;
2038 uint32_t flip_x;
2039 uint32_t flip_y;
2040 uint32_t rotation;
2041 uint32_t button_threshold;
2042 } abs_calib;
2043 struct {
2044 uint8_t status;
2045 uint8_t pad1[3];
2046 } core;
2047 struct {
2048 uint8_t enable;
2049 uint8_t pad2[3];
2050 } enable;
2051 struct {
2052 uint32_t offset_x;
2053 uint32_t offset_y;
2054 int32_t width;
2055 int32_t height;
2056 int32_t screen;
2057 uint32_t following;
2058 } abs_area;
2059 } xcb_input_device_ctl_data_t;
2060
2061 /**
2062 * @brief xcb_input_device_ctl_t
2063 **/
2064 typedef struct xcb_input_device_ctl_t {
2065 uint16_t control_id;
2066 uint16_t len;
2067 } xcb_input_device_ctl_t;
2068
2069 void *
2070 xcb_input_device_ctl_data (const xcb_input_device_ctl_t *R);
2071
2072 /**
2073 * @brief xcb_input_device_ctl_iterator_t
2074 **/
2075 typedef struct xcb_input_device_ctl_iterator_t {
2076 xcb_input_device_ctl_t *data;
2077 int rem;
2078 int index;
2079 } xcb_input_device_ctl_iterator_t;
2080
2081 /**
2082 * @brief xcb_input_change_device_control_cookie_t
2083 **/
2084 typedef struct xcb_input_change_device_control_cookie_t {
2085 unsigned int sequence;
2086 } xcb_input_change_device_control_cookie_t;
2087
2088 /** Opcode for xcb_input_change_device_control. */
2089 #define XCB_INPUT_CHANGE_DEVICE_CONTROL 35
2090
2091 /**
2092 * @brief xcb_input_change_device_control_request_t
2093 **/
2094 typedef struct xcb_input_change_device_control_request_t {
2095 uint8_t major_opcode;
2096 uint8_t minor_opcode;
2097 uint16_t length;
2098 uint16_t control_id;
2099 uint8_t device_id;
2100 uint8_t pad0;
2101 } xcb_input_change_device_control_request_t;
2102
2103 /**
2104 * @brief xcb_input_change_device_control_reply_t
2105 **/
2106 typedef struct xcb_input_change_device_control_reply_t {
2107 uint8_t response_type;
2108 uint8_t xi_reply_type;
2109 uint16_t sequence;
2110 uint32_t length;
2111 uint8_t status;
2112 uint8_t pad0[23];
2113 } xcb_input_change_device_control_reply_t;
2114
2115 /**
2116 * @brief xcb_input_list_device_properties_cookie_t
2117 **/
2118 typedef struct xcb_input_list_device_properties_cookie_t {
2119 unsigned int sequence;
2120 } xcb_input_list_device_properties_cookie_t;
2121
2122 /** Opcode for xcb_input_list_device_properties. */
2123 #define XCB_INPUT_LIST_DEVICE_PROPERTIES 36
2124
2125 /**
2126 * @brief xcb_input_list_device_properties_request_t
2127 **/
2128 typedef struct xcb_input_list_device_properties_request_t {
2129 uint8_t major_opcode;
2130 uint8_t minor_opcode;
2131 uint16_t length;
2132 uint8_t device_id;
2133 uint8_t pad0[3];
2134 } xcb_input_list_device_properties_request_t;
2135
2136 /**
2137 * @brief xcb_input_list_device_properties_reply_t
2138 **/
2139 typedef struct xcb_input_list_device_properties_reply_t {
2140 uint8_t response_type;
2141 uint8_t xi_reply_type;
2142 uint16_t sequence;
2143 uint32_t length;
2144 uint16_t num_atoms;
2145 uint8_t pad0[22];
2146 } xcb_input_list_device_properties_reply_t;
2147
2148 typedef enum xcb_input_property_format_t {
2149 XCB_INPUT_PROPERTY_FORMAT_8_BITS = 8,
2150 XCB_INPUT_PROPERTY_FORMAT_16_BITS = 16,
2151 XCB_INPUT_PROPERTY_FORMAT_32_BITS = 32
2152 } xcb_input_property_format_t;
2153
2154 /**
2155 * @brief xcb_input_change_device_property_items_t
2156 **/
2157 typedef struct xcb_input_change_device_property_items_t {
2158 uint8_t *data8;
2159 uint16_t *data16;
2160 uint32_t *data32;
2161 } xcb_input_change_device_property_items_t;
2162
2163 /** Opcode for xcb_input_change_device_property. */
2164 #define XCB_INPUT_CHANGE_DEVICE_PROPERTY 37
2165
2166 /**
2167 * @brief xcb_input_change_device_property_request_t
2168 **/
2169 typedef struct xcb_input_change_device_property_request_t {
2170 uint8_t major_opcode;
2171 uint8_t minor_opcode;
2172 uint16_t length;
2173 xcb_atom_t property;
2174 xcb_atom_t type;
2175 uint8_t device_id;
2176 uint8_t format;
2177 uint8_t mode;
2178 uint8_t pad0;
2179 uint32_t num_items;
2180 } xcb_input_change_device_property_request_t;
2181
2182 /** Opcode for xcb_input_delete_device_property. */
2183 #define XCB_INPUT_DELETE_DEVICE_PROPERTY 38
2184
2185 /**
2186 * @brief xcb_input_delete_device_property_request_t
2187 **/
2188 typedef struct xcb_input_delete_device_property_request_t {
2189 uint8_t major_opcode;
2190 uint8_t minor_opcode;
2191 uint16_t length;
2192 xcb_atom_t property;
2193 uint8_t device_id;
2194 uint8_t pad0[3];
2195 } xcb_input_delete_device_property_request_t;
2196
2197 /**
2198 * @brief xcb_input_get_device_property_cookie_t
2199 **/
2200 typedef struct xcb_input_get_device_property_cookie_t {
2201 unsigned int sequence;
2202 } xcb_input_get_device_property_cookie_t;
2203
2204 /** Opcode for xcb_input_get_device_property. */
2205 #define XCB_INPUT_GET_DEVICE_PROPERTY 39
2206
2207 /**
2208 * @brief xcb_input_get_device_property_request_t
2209 **/
2210 typedef struct xcb_input_get_device_property_request_t {
2211 uint8_t major_opcode;
2212 uint8_t minor_opcode;
2213 uint16_t length;
2214 xcb_atom_t property;
2215 xcb_atom_t type;
2216 uint32_t offset;
2217 uint32_t len;
2218 uint8_t device_id;
2219 uint8_t _delete;
2220 uint8_t pad0[2];
2221 } xcb_input_get_device_property_request_t;
2222
2223 /**
2224 * @brief xcb_input_get_device_property_items_t
2225 **/
2226 typedef struct xcb_input_get_device_property_items_t {
2227 uint8_t *data8;
2228 uint16_t *data16;
2229 uint32_t *data32;
2230 } xcb_input_get_device_property_items_t;
2231
2232 /**
2233 * @brief xcb_input_get_device_property_reply_t
2234 **/
2235 typedef struct xcb_input_get_device_property_reply_t {
2236 uint8_t response_type;
2237 uint8_t xi_reply_type;
2238 uint16_t sequence;
2239 uint32_t length;
2240 xcb_atom_t type;
2241 uint32_t bytes_after;
2242 uint32_t num_items;
2243 uint8_t format;
2244 uint8_t device_id;
2245 uint8_t pad0[10];
2246 } xcb_input_get_device_property_reply_t;
2247
2248 typedef enum xcb_input_device_t {
2249 XCB_INPUT_DEVICE_ALL = 0,
2250 XCB_INPUT_DEVICE_ALL_MASTER = 1
2251 } xcb_input_device_t;
2252
2253 /**
2254 * @brief xcb_input_group_info_t
2255 **/
2256 typedef struct xcb_input_group_info_t {
2257 uint8_t base;
2258 uint8_t latched;
2259 uint8_t locked;
2260 uint8_t effective;
2261 } xcb_input_group_info_t;
2262
2263 /**
2264 * @brief xcb_input_group_info_iterator_t
2265 **/
2266 typedef struct xcb_input_group_info_iterator_t {
2267 xcb_input_group_info_t *data;
2268 int rem;
2269 int index;
2270 } xcb_input_group_info_iterator_t;
2271
2272 /**
2273 * @brief xcb_input_modifier_info_t
2274 **/
2275 typedef struct xcb_input_modifier_info_t {
2276 uint32_t base;
2277 uint32_t latched;
2278 uint32_t locked;
2279 uint32_t effective;
2280 } xcb_input_modifier_info_t;
2281
2282 /**
2283 * @brief xcb_input_modifier_info_iterator_t
2284 **/
2285 typedef struct xcb_input_modifier_info_iterator_t {
2286 xcb_input_modifier_info_t *data;
2287 int rem;
2288 int index;
2289 } xcb_input_modifier_info_iterator_t;
2290
2291 /**
2292 * @brief xcb_input_xi_query_pointer_cookie_t
2293 **/
2294 typedef struct xcb_input_xi_query_pointer_cookie_t {
2295 unsigned int sequence;
2296 } xcb_input_xi_query_pointer_cookie_t;
2297
2298 /** Opcode for xcb_input_xi_query_pointer. */
2299 #define XCB_INPUT_XI_QUERY_POINTER 40
2300
2301 /**
2302 * @brief xcb_input_xi_query_pointer_request_t
2303 **/
2304 typedef struct xcb_input_xi_query_pointer_request_t {
2305 uint8_t major_opcode;
2306 uint8_t minor_opcode;
2307 uint16_t length;
2308 xcb_window_t window;
2309 xcb_input_device_id_t deviceid;
2310 uint8_t pad0[2];
2311 } xcb_input_xi_query_pointer_request_t;
2312
2313 /**
2314 * @brief xcb_input_xi_query_pointer_reply_t
2315 **/
2316 typedef struct xcb_input_xi_query_pointer_reply_t {
2317 uint8_t response_type;
2318 uint8_t pad0;
2319 uint16_t sequence;
2320 uint32_t length;
2321 xcb_window_t root;
2322 xcb_window_t child;
2323 xcb_input_fp1616_t root_x;
2324 xcb_input_fp1616_t root_y;
2325 xcb_input_fp1616_t win_x;
2326 xcb_input_fp1616_t win_y;
2327 uint8_t same_screen;
2328 uint8_t pad1;
2329 uint16_t buttons_len;
2330 xcb_input_modifier_info_t mods;
2331 xcb_input_group_info_t group;
2332 } xcb_input_xi_query_pointer_reply_t;
2333
2334 /** Opcode for xcb_input_xi_warp_pointer. */
2335 #define XCB_INPUT_XI_WARP_POINTER 41
2336
2337 /**
2338 * @brief xcb_input_xi_warp_pointer_request_t
2339 **/
2340 typedef struct xcb_input_xi_warp_pointer_request_t {
2341 uint8_t major_opcode;
2342 uint8_t minor_opcode;
2343 uint16_t length;
2344 xcb_window_t src_win;
2345 xcb_window_t dst_win;
2346 xcb_input_fp1616_t src_x;
2347 xcb_input_fp1616_t src_y;
2348 uint16_t src_width;
2349 uint16_t src_height;
2350 xcb_input_fp1616_t dst_x;
2351 xcb_input_fp1616_t dst_y;
2352 xcb_input_device_id_t deviceid;
2353 uint8_t pad0[2];
2354 } xcb_input_xi_warp_pointer_request_t;
2355
2356 /** Opcode for xcb_input_xi_change_cursor. */
2357 #define XCB_INPUT_XI_CHANGE_CURSOR 42
2358
2359 /**
2360 * @brief xcb_input_xi_change_cursor_request_t
2361 **/
2362 typedef struct xcb_input_xi_change_cursor_request_t {
2363 uint8_t major_opcode;
2364 uint8_t minor_opcode;
2365 uint16_t length;
2366 xcb_window_t window;
2367 xcb_cursor_t cursor;
2368 xcb_input_device_id_t deviceid;
2369 uint8_t pad0[2];
2370 } xcb_input_xi_change_cursor_request_t;
2371
2372 typedef enum xcb_input_hierarchy_change_type_t {
2373 XCB_INPUT_HIERARCHY_CHANGE_TYPE_ADD_MASTER = 1,
2374 XCB_INPUT_HIERARCHY_CHANGE_TYPE_REMOVE_MASTER = 2,
2375 XCB_INPUT_HIERARCHY_CHANGE_TYPE_ATTACH_SLAVE = 3,
2376 XCB_INPUT_HIERARCHY_CHANGE_TYPE_DETACH_SLAVE = 4
2377 } xcb_input_hierarchy_change_type_t;
2378
2379 typedef enum xcb_input_change_mode_t {
2380 XCB_INPUT_CHANGE_MODE_ATTACH = 1,
2381 XCB_INPUT_CHANGE_MODE_FLOAT = 2
2382 } xcb_input_change_mode_t;
2383
2384 /**
2385 * @brief xcb_input_add_master_t
2386 **/
2387 typedef struct xcb_input_add_master_t {
2388 uint16_t type;
2389 uint16_t len;
2390 uint16_t name_len;
2391 uint8_t send_core;
2392 uint8_t enable;
2393 } xcb_input_add_master_t;
2394
2395 /**
2396 * @brief xcb_input_add_master_iterator_t
2397 **/
2398 typedef struct xcb_input_add_master_iterator_t {
2399 xcb_input_add_master_t *data;
2400 int rem;
2401 int index;
2402 } xcb_input_add_master_iterator_t;
2403
2404 /**
2405 * @brief xcb_input_remove_master_t
2406 **/
2407 typedef struct xcb_input_remove_master_t {
2408 uint16_t type;
2409 uint16_t len;
2410 xcb_input_device_id_t deviceid;
2411 uint8_t return_mode;
2412 uint8_t pad0;
2413 xcb_input_device_id_t return_pointer;
2414 xcb_input_device_id_t return_keyboard;
2415 } xcb_input_remove_master_t;
2416
2417 /**
2418 * @brief xcb_input_remove_master_iterator_t
2419 **/
2420 typedef struct xcb_input_remove_master_iterator_t {
2421 xcb_input_remove_master_t *data;
2422 int rem;
2423 int index;
2424 } xcb_input_remove_master_iterator_t;
2425
2426 /**
2427 * @brief xcb_input_attach_slave_t
2428 **/
2429 typedef struct xcb_input_attach_slave_t {
2430 uint16_t type;
2431 uint16_t len;
2432 xcb_input_device_id_t deviceid;
2433 xcb_input_device_id_t master;
2434 } xcb_input_attach_slave_t;
2435
2436 /**
2437 * @brief xcb_input_attach_slave_iterator_t
2438 **/
2439 typedef struct xcb_input_attach_slave_iterator_t {
2440 xcb_input_attach_slave_t *data;
2441 int rem;
2442 int index;
2443 } xcb_input_attach_slave_iterator_t;
2444
2445 /**
2446 * @brief xcb_input_detach_slave_t
2447 **/
2448 typedef struct xcb_input_detach_slave_t {
2449 uint16_t type;
2450 uint16_t len;
2451 xcb_input_device_id_t deviceid;
2452 uint8_t pad0[2];
2453 } xcb_input_detach_slave_t;
2454
2455 /**
2456 * @brief xcb_input_detach_slave_iterator_t
2457 **/
2458 typedef struct xcb_input_detach_slave_iterator_t {
2459 xcb_input_detach_slave_t *data;
2460 int rem;
2461 int index;
2462 } xcb_input_detach_slave_iterator_t;
2463
2464 /**
2465 * @brief xcb_input_hierarchy_change_data_t
2466 **/
2467 typedef struct xcb_input_hierarchy_change_data_t {
2468 struct {
2469 uint16_t name_len;
2470 uint8_t send_core;
2471 uint8_t enable;
2472 char *name;
2473 } add_master;
2474 struct {
2475 xcb_input_device_id_t deviceid;
2476 uint8_t return_mode;
2477 uint8_t pad1;
2478 xcb_input_device_id_t return_pointer;
2479 xcb_input_device_id_t return_keyboard;
2480 } remove_master;
2481 struct {
2482 xcb_input_device_id_t deviceid;
2483 xcb_input_device_id_t master;
2484 } attach_slave;
2485 struct {
2486 xcb_input_device_id_t deviceid;
2487 uint8_t pad2[2];
2488 } detach_slave;
2489 } xcb_input_hierarchy_change_data_t;
2490
2491 /**
2492 * @brief xcb_input_hierarchy_change_t
2493 **/
2494 typedef struct xcb_input_hierarchy_change_t {
2495 uint16_t type;
2496 uint16_t len;
2497 } xcb_input_hierarchy_change_t;
2498
2499 void *
2500 xcb_input_hierarchy_change_data (const xcb_input_hierarchy_change_t *R);
2501
2502 /**
2503 * @brief xcb_input_hierarchy_change_iterator_t
2504 **/
2505 typedef struct xcb_input_hierarchy_change_iterator_t {
2506 xcb_input_hierarchy_change_t *data;
2507 int rem;
2508 int index;
2509 } xcb_input_hierarchy_change_iterator_t;
2510
2511 /** Opcode for xcb_input_xi_change_hierarchy. */
2512 #define XCB_INPUT_XI_CHANGE_HIERARCHY 43
2513
2514 /**
2515 * @brief xcb_input_xi_change_hierarchy_request_t
2516 **/
2517 typedef struct xcb_input_xi_change_hierarchy_request_t {
2518 uint8_t major_opcode;
2519 uint8_t minor_opcode;
2520 uint16_t length;
2521 uint8_t num_changes;
2522 uint8_t pad0[3];
2523 } xcb_input_xi_change_hierarchy_request_t;
2524
2525 /** Opcode for xcb_input_xi_set_client_pointer. */
2526 #define XCB_INPUT_XI_SET_CLIENT_POINTER 44
2527
2528 /**
2529 * @brief xcb_input_xi_set_client_pointer_request_t
2530 **/
2531 typedef struct xcb_input_xi_set_client_pointer_request_t {
2532 uint8_t major_opcode;
2533 uint8_t minor_opcode;
2534 uint16_t length;
2535 xcb_window_t window;
2536 xcb_input_device_id_t deviceid;
2537 uint8_t pad0[2];
2538 } xcb_input_xi_set_client_pointer_request_t;
2539
2540 /**
2541 * @brief xcb_input_xi_get_client_pointer_cookie_t
2542 **/
2543 typedef struct xcb_input_xi_get_client_pointer_cookie_t {
2544 unsigned int sequence;
2545 } xcb_input_xi_get_client_pointer_cookie_t;
2546
2547 /** Opcode for xcb_input_xi_get_client_pointer. */
2548 #define XCB_INPUT_XI_GET_CLIENT_POINTER 45
2549
2550 /**
2551 * @brief xcb_input_xi_get_client_pointer_request_t
2552 **/
2553 typedef struct xcb_input_xi_get_client_pointer_request_t {
2554 uint8_t major_opcode;
2555 uint8_t minor_opcode;
2556 uint16_t length;
2557 xcb_window_t window;
2558 } xcb_input_xi_get_client_pointer_request_t;
2559
2560 /**
2561 * @brief xcb_input_xi_get_client_pointer_reply_t
2562 **/
2563 typedef struct xcb_input_xi_get_client_pointer_reply_t {
2564 uint8_t response_type;
2565 uint8_t pad0;
2566 uint16_t sequence;
2567 uint32_t length;
2568 uint8_t set;
2569 uint8_t pad1;
2570 xcb_input_device_id_t deviceid;
2571 uint8_t pad2[20];
2572 } xcb_input_xi_get_client_pointer_reply_t;
2573
2574 typedef enum xcb_input_xi_event_mask_t {
2575 XCB_INPUT_XI_EVENT_MASK_DEVICE_CHANGED = 2,
2576 XCB_INPUT_XI_EVENT_MASK_KEY_PRESS = 4,
2577 XCB_INPUT_XI_EVENT_MASK_KEY_RELEASE = 8,
2578 XCB_INPUT_XI_EVENT_MASK_BUTTON_PRESS = 16,
2579 XCB_INPUT_XI_EVENT_MASK_BUTTON_RELEASE = 32,
2580 XCB_INPUT_XI_EVENT_MASK_MOTION = 64,
2581 XCB_INPUT_XI_EVENT_MASK_ENTER = 128,
2582 XCB_INPUT_XI_EVENT_MASK_LEAVE = 256,
2583 XCB_INPUT_XI_EVENT_MASK_FOCUS_IN = 512,
2584 XCB_INPUT_XI_EVENT_MASK_FOCUS_OUT = 1024,
2585 XCB_INPUT_XI_EVENT_MASK_HIERARCHY = 2048,
2586 XCB_INPUT_XI_EVENT_MASK_PROPERTY = 4096,
2587 XCB_INPUT_XI_EVENT_MASK_RAW_KEY_PRESS = 8192,
2588 XCB_INPUT_XI_EVENT_MASK_RAW_KEY_RELEASE = 16384,
2589 XCB_INPUT_XI_EVENT_MASK_RAW_BUTTON_PRESS = 32768,
2590 XCB_INPUT_XI_EVENT_MASK_RAW_BUTTON_RELEASE = 65536,
2591 XCB_INPUT_XI_EVENT_MASK_RAW_MOTION = 131072,
2592 XCB_INPUT_XI_EVENT_MASK_TOUCH_BEGIN = 262144,
2593 XCB_INPUT_XI_EVENT_MASK_TOUCH_UPDATE = 524288,
2594 XCB_INPUT_XI_EVENT_MASK_TOUCH_END = 1048576,
2595 XCB_INPUT_XI_EVENT_MASK_TOUCH_OWNERSHIP = 2097152,
2596 XCB_INPUT_XI_EVENT_MASK_RAW_TOUCH_BEGIN = 4194304,
2597 XCB_INPUT_XI_EVENT_MASK_RAW_TOUCH_UPDATE = 8388608,
2598 XCB_INPUT_XI_EVENT_MASK_RAW_TOUCH_END = 16777216,
2599 XCB_INPUT_XI_EVENT_MASK_BARRIER_HIT = 33554432,
2600 XCB_INPUT_XI_EVENT_MASK_BARRIER_LEAVE = 67108864
2601 } xcb_input_xi_event_mask_t;
2602
2603 /**
2604 * @brief xcb_input_event_mask_t
2605 **/
2606 typedef struct xcb_input_event_mask_t {
2607 xcb_input_device_id_t deviceid;
2608 uint16_t mask_len;
2609 } xcb_input_event_mask_t;
2610
2611 /**
2612 * @brief xcb_input_event_mask_iterator_t
2613 **/
2614 typedef struct xcb_input_event_mask_iterator_t {
2615 xcb_input_event_mask_t *data;
2616 int rem;
2617 int index;
2618 } xcb_input_event_mask_iterator_t;
2619
2620 /** Opcode for xcb_input_xi_select_events. */
2621 #define XCB_INPUT_XI_SELECT_EVENTS 46
2622
2623 /**
2624 * @brief xcb_input_xi_select_events_request_t
2625 **/
2626 typedef struct xcb_input_xi_select_events_request_t {
2627 uint8_t major_opcode;
2628 uint8_t minor_opcode;
2629 uint16_t length;
2630 xcb_window_t window;
2631 uint16_t num_mask;
2632 uint8_t pad0[2];
2633 } xcb_input_xi_select_events_request_t;
2634
2635 /**
2636 * @brief xcb_input_xi_query_version_cookie_t
2637 **/
2638 typedef struct xcb_input_xi_query_version_cookie_t {
2639 unsigned int sequence;
2640 } xcb_input_xi_query_version_cookie_t;
2641
2642 /** Opcode for xcb_input_xi_query_version. */
2643 #define XCB_INPUT_XI_QUERY_VERSION 47
2644
2645 /**
2646 * @brief xcb_input_xi_query_version_request_t
2647 **/
2648 typedef struct xcb_input_xi_query_version_request_t {
2649 uint8_t major_opcode;
2650 uint8_t minor_opcode;
2651 uint16_t length;
2652 uint16_t major_version;
2653 uint16_t minor_version;
2654 } xcb_input_xi_query_version_request_t;
2655
2656 /**
2657 * @brief xcb_input_xi_query_version_reply_t
2658 **/
2659 typedef struct xcb_input_xi_query_version_reply_t {
2660 uint8_t response_type;
2661 uint8_t pad0;
2662 uint16_t sequence;
2663 uint32_t length;
2664 uint16_t major_version;
2665 uint16_t minor_version;
2666 uint8_t pad1[20];
2667 } xcb_input_xi_query_version_reply_t;
2668
2669 typedef enum xcb_input_device_class_type_t {
2670 XCB_INPUT_DEVICE_CLASS_TYPE_KEY = 0,
2671 XCB_INPUT_DEVICE_CLASS_TYPE_BUTTON = 1,
2672 XCB_INPUT_DEVICE_CLASS_TYPE_VALUATOR = 2,
2673 XCB_INPUT_DEVICE_CLASS_TYPE_SCROLL = 3,
2674 XCB_INPUT_DEVICE_CLASS_TYPE_TOUCH = 8,
2675 XCB_INPUT_DEVICE_CLASS_TYPE_GESTURE = 9
2676 } xcb_input_device_class_type_t;
2677
2678 typedef enum xcb_input_device_type_t {
2679 XCB_INPUT_DEVICE_TYPE_MASTER_POINTER = 1,
2680 XCB_INPUT_DEVICE_TYPE_MASTER_KEYBOARD = 2,
2681 XCB_INPUT_DEVICE_TYPE_SLAVE_POINTER = 3,
2682 XCB_INPUT_DEVICE_TYPE_SLAVE_KEYBOARD = 4,
2683 XCB_INPUT_DEVICE_TYPE_FLOATING_SLAVE = 5
2684 } xcb_input_device_type_t;
2685
2686 typedef enum xcb_input_scroll_flags_t {
2687 XCB_INPUT_SCROLL_FLAGS_NO_EMULATION = 1,
2688 XCB_INPUT_SCROLL_FLAGS_PREFERRED = 2
2689 } xcb_input_scroll_flags_t;
2690
2691 typedef enum xcb_input_scroll_type_t {
2692 XCB_INPUT_SCROLL_TYPE_VERTICAL = 1,
2693 XCB_INPUT_SCROLL_TYPE_HORIZONTAL = 2
2694 } xcb_input_scroll_type_t;
2695
2696 typedef enum xcb_input_touch_mode_t {
2697 XCB_INPUT_TOUCH_MODE_DIRECT = 1,
2698 XCB_INPUT_TOUCH_MODE_DEPENDENT = 2
2699 } xcb_input_touch_mode_t;
2700
2701 /**
2702 * @brief xcb_input_button_class_t
2703 **/
2704 typedef struct xcb_input_button_class_t {
2705 uint16_t type;
2706 uint16_t len;
2707 xcb_input_device_id_t sourceid;
2708 uint16_t num_buttons;
2709 } xcb_input_button_class_t;
2710
2711 /**
2712 * @brief xcb_input_button_class_iterator_t
2713 **/
2714 typedef struct xcb_input_button_class_iterator_t {
2715 xcb_input_button_class_t *data;
2716 int rem;
2717 int index;
2718 } xcb_input_button_class_iterator_t;
2719
2720 /**
2721 * @brief xcb_input_key_class_t
2722 **/
2723 typedef struct xcb_input_key_class_t {
2724 uint16_t type;
2725 uint16_t len;
2726 xcb_input_device_id_t sourceid;
2727 uint16_t num_keys;
2728 } xcb_input_key_class_t;
2729
2730 /**
2731 * @brief xcb_input_key_class_iterator_t
2732 **/
2733 typedef struct xcb_input_key_class_iterator_t {
2734 xcb_input_key_class_t *data;
2735 int rem;
2736 int index;
2737 } xcb_input_key_class_iterator_t;
2738
2739 /**
2740 * @brief xcb_input_scroll_class_t
2741 **/
2742 typedef struct xcb_input_scroll_class_t {
2743 uint16_t type;
2744 uint16_t len;
2745 xcb_input_device_id_t sourceid;
2746 uint16_t number;
2747 uint16_t scroll_type;
2748 uint8_t pad0[2];
2749 uint32_t flags;
2750 xcb_input_fp3232_t increment;
2751 } xcb_input_scroll_class_t;
2752
2753 /**
2754 * @brief xcb_input_scroll_class_iterator_t
2755 **/
2756 typedef struct xcb_input_scroll_class_iterator_t {
2757 xcb_input_scroll_class_t *data;
2758 int rem;
2759 int index;
2760 } xcb_input_scroll_class_iterator_t;
2761
2762 /**
2763 * @brief xcb_input_touch_class_t
2764 **/
2765 typedef struct xcb_input_touch_class_t {
2766 uint16_t type;
2767 uint16_t len;
2768 xcb_input_device_id_t sourceid;
2769 uint8_t mode;
2770 uint8_t num_touches;
2771 } xcb_input_touch_class_t;
2772
2773 /**
2774 * @brief xcb_input_touch_class_iterator_t
2775 **/
2776 typedef struct xcb_input_touch_class_iterator_t {
2777 xcb_input_touch_class_t *data;
2778 int rem;
2779 int index;
2780 } xcb_input_touch_class_iterator_t;
2781
2782 /**
2783 * @brief xcb_input_gesture_class_t
2784 **/
2785 typedef struct xcb_input_gesture_class_t {
2786 uint16_t type;
2787 uint16_t len;
2788 xcb_input_device_id_t sourceid;
2789 uint8_t num_touches;
2790 uint8_t pad0;
2791 } xcb_input_gesture_class_t;
2792
2793 /**
2794 * @brief xcb_input_gesture_class_iterator_t
2795 **/
2796 typedef struct xcb_input_gesture_class_iterator_t {
2797 xcb_input_gesture_class_t *data;
2798 int rem;
2799 int index;
2800 } xcb_input_gesture_class_iterator_t;
2801
2802 /**
2803 * @brief xcb_input_valuator_class_t
2804 **/
2805 typedef struct xcb_input_valuator_class_t {
2806 uint16_t type;
2807 uint16_t len;
2808 xcb_input_device_id_t sourceid;
2809 uint16_t number;
2810 xcb_atom_t label;
2811 xcb_input_fp3232_t min;
2812 xcb_input_fp3232_t max;
2813 xcb_input_fp3232_t value;
2814 uint32_t resolution;
2815 uint8_t mode;
2816 uint8_t pad0[3];
2817 } xcb_input_valuator_class_t;
2818
2819 /**
2820 * @brief xcb_input_valuator_class_iterator_t
2821 **/
2822 typedef struct xcb_input_valuator_class_iterator_t {
2823 xcb_input_valuator_class_t *data;
2824 int rem;
2825 int index;
2826 } xcb_input_valuator_class_iterator_t;
2827
2828 /**
2829 * @brief xcb_input_device_class_data_t
2830 **/
2831 typedef struct xcb_input_device_class_data_t {
2832 struct {
2833 uint16_t num_keys;
2834 uint32_t *keys;
2835 } key;
2836 struct {
2837 uint16_t num_buttons;
2838 uint32_t *state;
2839 xcb_atom_t *labels;
2840 } button;
2841 struct {
2842 uint16_t number;
2843 xcb_atom_t label;
2844 xcb_input_fp3232_t min;
2845 xcb_input_fp3232_t max;
2846 xcb_input_fp3232_t value;
2847 uint32_t resolution;
2848 uint8_t mode;
2849 uint8_t pad0[3];
2850 } valuator;
2851 struct {
2852 uint16_t number;
2853 uint16_t scroll_type;
2854 uint8_t pad1[2];
2855 uint32_t flags;
2856 xcb_input_fp3232_t increment;
2857 } scroll;
2858 struct {
2859 uint8_t mode;
2860 uint8_t num_touches;
2861 } touch;
2862 struct {
2863 uint8_t num_touches;
2864 uint8_t pad2;
2865 } gesture;
2866 } xcb_input_device_class_data_t;
2867
2868 /**
2869 * @brief xcb_input_device_class_t
2870 **/
2871 typedef struct xcb_input_device_class_t {
2872 uint16_t type;
2873 uint16_t len;
2874 xcb_input_device_id_t sourceid;
2875 } xcb_input_device_class_t;
2876
2877 void *
2878 xcb_input_device_class_data (const xcb_input_device_class_t *R);
2879
2880 /**
2881 * @brief xcb_input_device_class_iterator_t
2882 **/
2883 typedef struct xcb_input_device_class_iterator_t {
2884 xcb_input_device_class_t *data;
2885 int rem;
2886 int index;
2887 } xcb_input_device_class_iterator_t;
2888
2889 /**
2890 * @brief xcb_input_xi_device_info_t
2891 **/
2892 typedef struct xcb_input_xi_device_info_t {
2893 xcb_input_device_id_t deviceid;
2894 uint16_t type;
2895 xcb_input_device_id_t attachment;
2896 uint16_t num_classes;
2897 uint16_t name_len;
2898 uint8_t enabled;
2899 uint8_t pad0;
2900 } xcb_input_xi_device_info_t;
2901
2902 /**
2903 * @brief xcb_input_xi_device_info_iterator_t
2904 **/
2905 typedef struct xcb_input_xi_device_info_iterator_t {
2906 xcb_input_xi_device_info_t *data;
2907 int rem;
2908 int index;
2909 } xcb_input_xi_device_info_iterator_t;
2910
2911 /**
2912 * @brief xcb_input_xi_query_device_cookie_t
2913 **/
2914 typedef struct xcb_input_xi_query_device_cookie_t {
2915 unsigned int sequence;
2916 } xcb_input_xi_query_device_cookie_t;
2917
2918 /** Opcode for xcb_input_xi_query_device. */
2919 #define XCB_INPUT_XI_QUERY_DEVICE 48
2920
2921 /**
2922 * @brief xcb_input_xi_query_device_request_t
2923 **/
2924 typedef struct xcb_input_xi_query_device_request_t {
2925 uint8_t major_opcode;
2926 uint8_t minor_opcode;
2927 uint16_t length;
2928 xcb_input_device_id_t deviceid;
2929 uint8_t pad0[2];
2930 } xcb_input_xi_query_device_request_t;
2931
2932 /**
2933 * @brief xcb_input_xi_query_device_reply_t
2934 **/
2935 typedef struct xcb_input_xi_query_device_reply_t {
2936 uint8_t response_type;
2937 uint8_t pad0;
2938 uint16_t sequence;
2939 uint32_t length;
2940 uint16_t num_infos;
2941 uint8_t pad1[22];
2942 } xcb_input_xi_query_device_reply_t;
2943
2944 /** Opcode for xcb_input_xi_set_focus. */
2945 #define XCB_INPUT_XI_SET_FOCUS 49
2946
2947 /**
2948 * @brief xcb_input_xi_set_focus_request_t
2949 **/
2950 typedef struct xcb_input_xi_set_focus_request_t {
2951 uint8_t major_opcode;
2952 uint8_t minor_opcode;
2953 uint16_t length;
2954 xcb_window_t window;
2955 xcb_timestamp_t time;
2956 xcb_input_device_id_t deviceid;
2957 uint8_t pad0[2];
2958 } xcb_input_xi_set_focus_request_t;
2959
2960 /**
2961 * @brief xcb_input_xi_get_focus_cookie_t
2962 **/
2963 typedef struct xcb_input_xi_get_focus_cookie_t {
2964 unsigned int sequence;
2965 } xcb_input_xi_get_focus_cookie_t;
2966
2967 /** Opcode for xcb_input_xi_get_focus. */
2968 #define XCB_INPUT_XI_GET_FOCUS 50
2969
2970 /**
2971 * @brief xcb_input_xi_get_focus_request_t
2972 **/
2973 typedef struct xcb_input_xi_get_focus_request_t {
2974 uint8_t major_opcode;
2975 uint8_t minor_opcode;
2976 uint16_t length;
2977 xcb_input_device_id_t deviceid;
2978 uint8_t pad0[2];
2979 } xcb_input_xi_get_focus_request_t;
2980
2981 /**
2982 * @brief xcb_input_xi_get_focus_reply_t
2983 **/
2984 typedef struct xcb_input_xi_get_focus_reply_t {
2985 uint8_t response_type;
2986 uint8_t pad0;
2987 uint16_t sequence;
2988 uint32_t length;
2989 xcb_window_t focus;
2990 uint8_t pad1[20];
2991 } xcb_input_xi_get_focus_reply_t;
2992
2993 typedef enum xcb_input_grab_owner_t {
2994 XCB_INPUT_GRAB_OWNER_NO_OWNER = 0,
2995 XCB_INPUT_GRAB_OWNER_OWNER = 1
2996 } xcb_input_grab_owner_t;
2997
2998 /**
2999 * @brief xcb_input_xi_grab_device_cookie_t
3000 **/
3001 typedef struct xcb_input_xi_grab_device_cookie_t {
3002 unsigned int sequence;
3003 } xcb_input_xi_grab_device_cookie_t;
3004
3005 /** Opcode for xcb_input_xi_grab_device. */
3006 #define XCB_INPUT_XI_GRAB_DEVICE 51
3007
3008 /**
3009 * @brief xcb_input_xi_grab_device_request_t
3010 **/
3011 typedef struct xcb_input_xi_grab_device_request_t {
3012 uint8_t major_opcode;
3013 uint8_t minor_opcode;
3014 uint16_t length;
3015 xcb_window_t window;
3016 xcb_timestamp_t time;
3017 xcb_cursor_t cursor;
3018 xcb_input_device_id_t deviceid;
3019 uint8_t mode;
3020 uint8_t paired_device_mode;
3021 uint8_t owner_events;
3022 uint8_t pad0;
3023 uint16_t mask_len;
3024 } xcb_input_xi_grab_device_request_t;
3025
3026 /**
3027 * @brief xcb_input_xi_grab_device_reply_t
3028 **/
3029 typedef struct xcb_input_xi_grab_device_reply_t {
3030 uint8_t response_type;
3031 uint8_t pad0;
3032 uint16_t sequence;
3033 uint32_t length;
3034 uint8_t status;
3035 uint8_t pad1[23];
3036 } xcb_input_xi_grab_device_reply_t;
3037
3038 /** Opcode for xcb_input_xi_ungrab_device. */
3039 #define XCB_INPUT_XI_UNGRAB_DEVICE 52
3040
3041 /**
3042 * @brief xcb_input_xi_ungrab_device_request_t
3043 **/
3044 typedef struct xcb_input_xi_ungrab_device_request_t {
3045 uint8_t major_opcode;
3046 uint8_t minor_opcode;
3047 uint16_t length;
3048 xcb_timestamp_t time;
3049 xcb_input_device_id_t deviceid;
3050 uint8_t pad0[2];
3051 } xcb_input_xi_ungrab_device_request_t;
3052
3053 typedef enum xcb_input_event_mode_t {
3054 XCB_INPUT_EVENT_MODE_ASYNC_DEVICE = 0,
3055 XCB_INPUT_EVENT_MODE_SYNC_DEVICE = 1,
3056 XCB_INPUT_EVENT_MODE_REPLAY_DEVICE = 2,
3057 XCB_INPUT_EVENT_MODE_ASYNC_PAIRED_DEVICE = 3,
3058 XCB_INPUT_EVENT_MODE_ASYNC_PAIR = 4,
3059 XCB_INPUT_EVENT_MODE_SYNC_PAIR = 5,
3060 XCB_INPUT_EVENT_MODE_ACCEPT_TOUCH = 6,
3061 XCB_INPUT_EVENT_MODE_REJECT_TOUCH = 7
3062 } xcb_input_event_mode_t;
3063
3064 /** Opcode for xcb_input_xi_allow_events. */
3065 #define XCB_INPUT_XI_ALLOW_EVENTS 53
3066
3067 /**
3068 * @brief xcb_input_xi_allow_events_request_t
3069 **/
3070 typedef struct xcb_input_xi_allow_events_request_t {
3071 uint8_t major_opcode;
3072 uint8_t minor_opcode;
3073 uint16_t length;
3074 xcb_timestamp_t time;
3075 xcb_input_device_id_t deviceid;
3076 uint8_t event_mode;
3077 uint8_t pad0;
3078 uint32_t touchid;
3079 xcb_window_t grab_window;
3080 } xcb_input_xi_allow_events_request_t;
3081
3082 typedef enum xcb_input_grab_mode_22_t {
3083 XCB_INPUT_GRAB_MODE_22_SYNC = 0,
3084 XCB_INPUT_GRAB_MODE_22_ASYNC = 1,
3085 XCB_INPUT_GRAB_MODE_22_TOUCH = 2
3086 } xcb_input_grab_mode_22_t;
3087
3088 typedef enum xcb_input_grab_type_t {
3089 XCB_INPUT_GRAB_TYPE_BUTTON = 0,
3090 XCB_INPUT_GRAB_TYPE_KEYCODE = 1,
3091 XCB_INPUT_GRAB_TYPE_ENTER = 2,
3092 XCB_INPUT_GRAB_TYPE_FOCUS_IN = 3,
3093 XCB_INPUT_GRAB_TYPE_TOUCH_BEGIN = 4,
3094 XCB_INPUT_GRAB_TYPE_GESTURE_PINCH_BEGIN = 5,
3095 XCB_INPUT_GRAB_TYPE_GESTURE_SWIPE_BEGIN = 6
3096 } xcb_input_grab_type_t;
3097
3098 typedef enum xcb_input_modifier_mask_t {
3099 XCB_INPUT_MODIFIER_MASK_ANY = 2147483648
3100 } xcb_input_modifier_mask_t;
3101
3102 /**
3103 * @brief xcb_input_grab_modifier_info_t
3104 **/
3105 typedef struct xcb_input_grab_modifier_info_t {
3106 uint32_t modifiers;
3107 uint8_t status;
3108 uint8_t pad0[3];
3109 } xcb_input_grab_modifier_info_t;
3110
3111 /**
3112 * @brief xcb_input_grab_modifier_info_iterator_t
3113 **/
3114 typedef struct xcb_input_grab_modifier_info_iterator_t {
3115 xcb_input_grab_modifier_info_t *data;
3116 int rem;
3117 int index;
3118 } xcb_input_grab_modifier_info_iterator_t;
3119
3120 /**
3121 * @brief xcb_input_xi_passive_grab_device_cookie_t
3122 **/
3123 typedef struct xcb_input_xi_passive_grab_device_cookie_t {
3124 unsigned int sequence;
3125 } xcb_input_xi_passive_grab_device_cookie_t;
3126
3127 /** Opcode for xcb_input_xi_passive_grab_device. */
3128 #define XCB_INPUT_XI_PASSIVE_GRAB_DEVICE 54
3129
3130 /**
3131 * @brief xcb_input_xi_passive_grab_device_request_t
3132 **/
3133 typedef struct xcb_input_xi_passive_grab_device_request_t {
3134 uint8_t major_opcode;
3135 uint8_t minor_opcode;
3136 uint16_t length;
3137 xcb_timestamp_t time;
3138 xcb_window_t grab_window;
3139 xcb_cursor_t cursor;
3140 uint32_t detail;
3141 xcb_input_device_id_t deviceid;
3142 uint16_t num_modifiers;
3143 uint16_t mask_len;
3144 uint8_t grab_type;
3145 uint8_t grab_mode;
3146 uint8_t paired_device_mode;
3147 uint8_t owner_events;
3148 uint8_t pad0[2];
3149 } xcb_input_xi_passive_grab_device_request_t;
3150
3151 /**
3152 * @brief xcb_input_xi_passive_grab_device_reply_t
3153 **/
3154 typedef struct xcb_input_xi_passive_grab_device_reply_t {
3155 uint8_t response_type;
3156 uint8_t pad0;
3157 uint16_t sequence;
3158 uint32_t length;
3159 uint16_t num_modifiers;
3160 uint8_t pad1[22];
3161 } xcb_input_xi_passive_grab_device_reply_t;
3162
3163 /** Opcode for xcb_input_xi_passive_ungrab_device. */
3164 #define XCB_INPUT_XI_PASSIVE_UNGRAB_DEVICE 55
3165
3166 /**
3167 * @brief xcb_input_xi_passive_ungrab_device_request_t
3168 **/
3169 typedef struct xcb_input_xi_passive_ungrab_device_request_t {
3170 uint8_t major_opcode;
3171 uint8_t minor_opcode;
3172 uint16_t length;
3173 xcb_window_t grab_window;
3174 uint32_t detail;
3175 xcb_input_device_id_t deviceid;
3176 uint16_t num_modifiers;
3177 uint8_t grab_type;
3178 uint8_t pad0[3];
3179 } xcb_input_xi_passive_ungrab_device_request_t;
3180
3181 /**
3182 * @brief xcb_input_xi_list_properties_cookie_t
3183 **/
3184 typedef struct xcb_input_xi_list_properties_cookie_t {
3185 unsigned int sequence;
3186 } xcb_input_xi_list_properties_cookie_t;
3187
3188 /** Opcode for xcb_input_xi_list_properties. */
3189 #define XCB_INPUT_XI_LIST_PROPERTIES 56
3190
3191 /**
3192 * @brief xcb_input_xi_list_properties_request_t
3193 **/
3194 typedef struct xcb_input_xi_list_properties_request_t {
3195 uint8_t major_opcode;
3196 uint8_t minor_opcode;
3197 uint16_t length;
3198 xcb_input_device_id_t deviceid;
3199 uint8_t pad0[2];
3200 } xcb_input_xi_list_properties_request_t;
3201
3202 /**
3203 * @brief xcb_input_xi_list_properties_reply_t
3204 **/
3205 typedef struct xcb_input_xi_list_properties_reply_t {
3206 uint8_t response_type;
3207 uint8_t pad0;
3208 uint16_t sequence;
3209 uint32_t length;
3210 uint16_t num_properties;
3211 uint8_t pad1[22];
3212 } xcb_input_xi_list_properties_reply_t;
3213
3214 /**
3215 * @brief xcb_input_xi_change_property_items_t
3216 **/
3217 typedef struct xcb_input_xi_change_property_items_t {
3218 uint8_t *data8;
3219 uint16_t *data16;
3220 uint32_t *data32;
3221 } xcb_input_xi_change_property_items_t;
3222
3223 /** Opcode for xcb_input_xi_change_property. */
3224 #define XCB_INPUT_XI_CHANGE_PROPERTY 57
3225
3226 /**
3227 * @brief xcb_input_xi_change_property_request_t
3228 **/
3229 typedef struct xcb_input_xi_change_property_request_t {
3230 uint8_t major_opcode;
3231 uint8_t minor_opcode;
3232 uint16_t length;
3233 xcb_input_device_id_t deviceid;
3234 uint8_t mode;
3235 uint8_t format;
3236 xcb_atom_t property;
3237 xcb_atom_t type;
3238 uint32_t num_items;
3239 } xcb_input_xi_change_property_request_t;
3240
3241 /** Opcode for xcb_input_xi_delete_property. */
3242 #define XCB_INPUT_XI_DELETE_PROPERTY 58
3243
3244 /**
3245 * @brief xcb_input_xi_delete_property_request_t
3246 **/
3247 typedef struct xcb_input_xi_delete_property_request_t {
3248 uint8_t major_opcode;
3249 uint8_t minor_opcode;
3250 uint16_t length;
3251 xcb_input_device_id_t deviceid;
3252 uint8_t pad0[2];
3253 xcb_atom_t property;
3254 } xcb_input_xi_delete_property_request_t;
3255
3256 /**
3257 * @brief xcb_input_xi_get_property_cookie_t
3258 **/
3259 typedef struct xcb_input_xi_get_property_cookie_t {
3260 unsigned int sequence;
3261 } xcb_input_xi_get_property_cookie_t;
3262
3263 /** Opcode for xcb_input_xi_get_property. */
3264 #define XCB_INPUT_XI_GET_PROPERTY 59
3265
3266 /**
3267 * @brief xcb_input_xi_get_property_request_t
3268 **/
3269 typedef struct xcb_input_xi_get_property_request_t {
3270 uint8_t major_opcode;
3271 uint8_t minor_opcode;
3272 uint16_t length;
3273 xcb_input_device_id_t deviceid;
3274 uint8_t _delete;
3275 uint8_t pad0;
3276 xcb_atom_t property;
3277 xcb_atom_t type;
3278 uint32_t offset;
3279 uint32_t len;
3280 } xcb_input_xi_get_property_request_t;
3281
3282 /**
3283 * @brief xcb_input_xi_get_property_items_t
3284 **/
3285 typedef struct xcb_input_xi_get_property_items_t {
3286 uint8_t *data8;
3287 uint16_t *data16;
3288 uint32_t *data32;
3289 } xcb_input_xi_get_property_items_t;
3290
3291 /**
3292 * @brief xcb_input_xi_get_property_reply_t
3293 **/
3294 typedef struct xcb_input_xi_get_property_reply_t {
3295 uint8_t response_type;
3296 uint8_t pad0;
3297 uint16_t sequence;
3298 uint32_t length;
3299 xcb_atom_t type;
3300 uint32_t bytes_after;
3301 uint32_t num_items;
3302 uint8_t format;
3303 uint8_t pad1[11];
3304 } xcb_input_xi_get_property_reply_t;
3305
3306 /**
3307 * @brief xcb_input_xi_get_selected_events_cookie_t
3308 **/
3309 typedef struct xcb_input_xi_get_selected_events_cookie_t {
3310 unsigned int sequence;
3311 } xcb_input_xi_get_selected_events_cookie_t;
3312
3313 /** Opcode for xcb_input_xi_get_selected_events. */
3314 #define XCB_INPUT_XI_GET_SELECTED_EVENTS 60
3315
3316 /**
3317 * @brief xcb_input_xi_get_selected_events_request_t
3318 **/
3319 typedef struct xcb_input_xi_get_selected_events_request_t {
3320 uint8_t major_opcode;
3321 uint8_t minor_opcode;
3322 uint16_t length;
3323 xcb_window_t window;
3324 } xcb_input_xi_get_selected_events_request_t;
3325
3326 /**
3327 * @brief xcb_input_xi_get_selected_events_reply_t
3328 **/
3329 typedef struct xcb_input_xi_get_selected_events_reply_t {
3330 uint8_t response_type;
3331 uint8_t pad0;
3332 uint16_t sequence;
3333 uint32_t length;
3334 uint16_t num_masks;
3335 uint8_t pad1[22];
3336 } xcb_input_xi_get_selected_events_reply_t;
3337
3338 /**
3339 * @brief xcb_input_barrier_release_pointer_info_t
3340 **/
3341 typedef struct xcb_input_barrier_release_pointer_info_t {
3342 xcb_input_device_id_t deviceid;
3343 uint8_t pad0[2];
3344 xcb_xfixes_barrier_t barrier;
3345 uint32_t eventid;
3346 } xcb_input_barrier_release_pointer_info_t;
3347
3348 /**
3349 * @brief xcb_input_barrier_release_pointer_info_iterator_t
3350 **/
3351 typedef struct xcb_input_barrier_release_pointer_info_iterator_t {
3352 xcb_input_barrier_release_pointer_info_t *data;
3353 int rem;
3354 int index;
3355 } xcb_input_barrier_release_pointer_info_iterator_t;
3356
3357 /** Opcode for xcb_input_xi_barrier_release_pointer. */
3358 #define XCB_INPUT_XI_BARRIER_RELEASE_POINTER 61
3359
3360 /**
3361 * @brief xcb_input_xi_barrier_release_pointer_request_t
3362 **/
3363 typedef struct xcb_input_xi_barrier_release_pointer_request_t {
3364 uint8_t major_opcode;
3365 uint8_t minor_opcode;
3366 uint16_t length;
3367 uint32_t num_barriers;
3368 } xcb_input_xi_barrier_release_pointer_request_t;
3369
3370 /** Opcode for xcb_input_device_valuator. */
3371 #define XCB_INPUT_DEVICE_VALUATOR 0
3372
3373 /**
3374 * @brief xcb_input_device_valuator_event_t
3375 **/
3376 typedef struct xcb_input_device_valuator_event_t {
3377 uint8_t response_type;
3378 uint8_t device_id;
3379 uint16_t sequence;
3380 uint16_t device_state;
3381 uint8_t num_valuators;
3382 uint8_t first_valuator;
3383 int32_t valuators[6];
3384 } xcb_input_device_valuator_event_t;
3385
3386 typedef enum xcb_input_more_events_mask_t {
3387 XCB_INPUT_MORE_EVENTS_MASK_MORE_EVENTS = 128
3388 } xcb_input_more_events_mask_t;
3389
3390 /** Opcode for xcb_input_device_key_press. */
3391 #define XCB_INPUT_DEVICE_KEY_PRESS 1
3392
3393 /**
3394 * @brief xcb_input_device_key_press_event_t
3395 **/
3396 typedef struct xcb_input_device_key_press_event_t {
3397 uint8_t response_type;
3398 uint8_t detail;
3399 uint16_t sequence;
3400 xcb_timestamp_t time;
3401 xcb_window_t root;
3402 xcb_window_t event;
3403 xcb_window_t child;
3404 int16_t root_x;
3405 int16_t root_y;
3406 int16_t event_x;
3407 int16_t event_y;
3408 uint16_t state;
3409 uint8_t same_screen;
3410 uint8_t device_id;
3411 } xcb_input_device_key_press_event_t;
3412
3413 /** Opcode for xcb_input_device_key_release. */
3414 #define XCB_INPUT_DEVICE_KEY_RELEASE 2
3415
3416 typedef xcb_input_device_key_press_event_t xcb_input_device_key_release_event_t;
3417
3418 /** Opcode for xcb_input_device_button_press. */
3419 #define XCB_INPUT_DEVICE_BUTTON_PRESS 3
3420
3421 typedef xcb_input_device_key_press_event_t xcb_input_device_button_press_event_t;
3422
3423 /** Opcode for xcb_input_device_button_release. */
3424 #define XCB_INPUT_DEVICE_BUTTON_RELEASE 4
3425
3426 typedef xcb_input_device_key_press_event_t xcb_input_device_button_release_event_t;
3427
3428 /** Opcode for xcb_input_device_motion_notify. */
3429 #define XCB_INPUT_DEVICE_MOTION_NOTIFY 5
3430
3431 typedef xcb_input_device_key_press_event_t xcb_input_device_motion_notify_event_t;
3432
3433 /** Opcode for xcb_input_device_focus_in. */
3434 #define XCB_INPUT_DEVICE_FOCUS_IN 6
3435
3436 /**
3437 * @brief xcb_input_device_focus_in_event_t
3438 **/
3439 typedef struct xcb_input_device_focus_in_event_t {
3440 uint8_t response_type;
3441 uint8_t detail;
3442 uint16_t sequence;
3443 xcb_timestamp_t time;
3444 xcb_window_t window;
3445 uint8_t mode;
3446 uint8_t device_id;
3447 uint8_t pad0[18];
3448 } xcb_input_device_focus_in_event_t;
3449
3450 /** Opcode for xcb_input_device_focus_out. */
3451 #define XCB_INPUT_DEVICE_FOCUS_OUT 7
3452
3453 typedef xcb_input_device_focus_in_event_t xcb_input_device_focus_out_event_t;
3454
3455 /** Opcode for xcb_input_proximity_in. */
3456 #define XCB_INPUT_PROXIMITY_IN 8
3457
3458 typedef xcb_input_device_key_press_event_t xcb_input_proximity_in_event_t;
3459
3460 /** Opcode for xcb_input_proximity_out. */
3461 #define XCB_INPUT_PROXIMITY_OUT 9
3462
3463 typedef xcb_input_device_key_press_event_t xcb_input_proximity_out_event_t;
3464
3465 typedef enum xcb_input_classes_reported_mask_t {
3466 XCB_INPUT_CLASSES_REPORTED_MASK_OUT_OF_PROXIMITY = 128,
3467 XCB_INPUT_CLASSES_REPORTED_MASK_DEVICE_MODE_ABSOLUTE = 64,
3468 XCB_INPUT_CLASSES_REPORTED_MASK_REPORTING_VALUATORS = 4,
3469 XCB_INPUT_CLASSES_REPORTED_MASK_REPORTING_BUTTONS = 2,
3470 XCB_INPUT_CLASSES_REPORTED_MASK_REPORTING_KEYS = 1
3471 } xcb_input_classes_reported_mask_t;
3472
3473 /** Opcode for xcb_input_device_state_notify. */
3474 #define XCB_INPUT_DEVICE_STATE_NOTIFY 10
3475
3476 /**
3477 * @brief xcb_input_device_state_notify_event_t
3478 **/
3479 typedef struct xcb_input_device_state_notify_event_t {
3480 uint8_t response_type;
3481 uint8_t device_id;
3482 uint16_t sequence;
3483 xcb_timestamp_t time;
3484 uint8_t num_keys;
3485 uint8_t num_buttons;
3486 uint8_t num_valuators;
3487 uint8_t classes_reported;
3488 uint8_t buttons[4];
3489 uint8_t keys[4];
3490 uint32_t valuators[3];
3491 } xcb_input_device_state_notify_event_t;
3492
3493 /** Opcode for xcb_input_device_mapping_notify. */
3494 #define XCB_INPUT_DEVICE_MAPPING_NOTIFY 11
3495
3496 /**
3497 * @brief xcb_input_device_mapping_notify_event_t
3498 **/
3499 typedef struct xcb_input_device_mapping_notify_event_t {
3500 uint8_t response_type;
3501 uint8_t device_id;
3502 uint16_t sequence;
3503 uint8_t request;
3504 xcb_input_key_code_t first_keycode;
3505 uint8_t count;
3506 uint8_t pad0;
3507 xcb_timestamp_t time;
3508 uint8_t pad1[20];
3509 } xcb_input_device_mapping_notify_event_t;
3510
3511 typedef enum xcb_input_change_device_t {
3512 XCB_INPUT_CHANGE_DEVICE_NEW_POINTER = 0,
3513 XCB_INPUT_CHANGE_DEVICE_NEW_KEYBOARD = 1
3514 } xcb_input_change_device_t;
3515
3516 /** Opcode for xcb_input_change_device_notify. */
3517 #define XCB_INPUT_CHANGE_DEVICE_NOTIFY 12
3518
3519 /**
3520 * @brief xcb_input_change_device_notify_event_t
3521 **/
3522 typedef struct xcb_input_change_device_notify_event_t {
3523 uint8_t response_type;
3524 uint8_t device_id;
3525 uint16_t sequence;
3526 xcb_timestamp_t time;
3527 uint8_t request;
3528 uint8_t pad0[23];
3529 } xcb_input_change_device_notify_event_t;
3530
3531 /** Opcode for xcb_input_device_key_state_notify. */
3532 #define XCB_INPUT_DEVICE_KEY_STATE_NOTIFY 13
3533
3534 /**
3535 * @brief xcb_input_device_key_state_notify_event_t
3536 **/
3537 typedef struct xcb_input_device_key_state_notify_event_t {
3538 uint8_t response_type;
3539 uint8_t device_id;
3540 uint16_t sequence;
3541 uint8_t keys[28];
3542 } xcb_input_device_key_state_notify_event_t;
3543
3544 /** Opcode for xcb_input_device_button_state_notify. */
3545 #define XCB_INPUT_DEVICE_BUTTON_STATE_NOTIFY 14
3546
3547 /**
3548 * @brief xcb_input_device_button_state_notify_event_t
3549 **/
3550 typedef struct xcb_input_device_button_state_notify_event_t {
3551 uint8_t response_type;
3552 uint8_t device_id;
3553 uint16_t sequence;
3554 uint8_t buttons[28];
3555 } xcb_input_device_button_state_notify_event_t;
3556
3557 typedef enum xcb_input_device_change_t {
3558 XCB_INPUT_DEVICE_CHANGE_ADDED = 0,
3559 XCB_INPUT_DEVICE_CHANGE_REMOVED = 1,
3560 XCB_INPUT_DEVICE_CHANGE_ENABLED = 2,
3561 XCB_INPUT_DEVICE_CHANGE_DISABLED = 3,
3562 XCB_INPUT_DEVICE_CHANGE_UNRECOVERABLE = 4,
3563 XCB_INPUT_DEVICE_CHANGE_CONTROL_CHANGED = 5
3564 } xcb_input_device_change_t;
3565
3566 /** Opcode for xcb_input_device_presence_notify. */
3567 #define XCB_INPUT_DEVICE_PRESENCE_NOTIFY 15
3568
3569 /**
3570 * @brief xcb_input_device_presence_notify_event_t
3571 **/
3572 typedef struct xcb_input_device_presence_notify_event_t {
3573 uint8_t response_type;
3574 uint8_t pad0;
3575 uint16_t sequence;
3576 xcb_timestamp_t time;
3577 uint8_t devchange;
3578 uint8_t device_id;
3579 uint16_t control;
3580 uint8_t pad1[20];
3581 } xcb_input_device_presence_notify_event_t;
3582
3583 /** Opcode for xcb_input_device_property_notify. */
3584 #define XCB_INPUT_DEVICE_PROPERTY_NOTIFY 16
3585
3586 /**
3587 * @brief xcb_input_device_property_notify_event_t
3588 **/
3589 typedef struct xcb_input_device_property_notify_event_t {
3590 uint8_t response_type;
3591 uint8_t state;
3592 uint16_t sequence;
3593 xcb_timestamp_t time;
3594 xcb_atom_t property;
3595 uint8_t pad0[19];
3596 uint8_t device_id;
3597 } xcb_input_device_property_notify_event_t;
3598
3599 typedef enum xcb_input_change_reason_t {
3600 XCB_INPUT_CHANGE_REASON_SLAVE_SWITCH = 1,
3601 XCB_INPUT_CHANGE_REASON_DEVICE_CHANGE = 2
3602 } xcb_input_change_reason_t;
3603
3604 /** Opcode for xcb_input_device_changed. */
3605 #define XCB_INPUT_DEVICE_CHANGED 1
3606
3607 /**
3608 * @brief xcb_input_device_changed_event_t
3609 **/
3610 typedef struct xcb_input_device_changed_event_t {
3611 uint8_t response_type;
3612 uint8_t extension;
3613 uint16_t sequence;
3614 uint32_t length;
3615 uint16_t event_type;
3616 xcb_input_device_id_t deviceid;
3617 xcb_timestamp_t time;
3618 uint16_t num_classes;
3619 xcb_input_device_id_t sourceid;
3620 uint8_t reason;
3621 uint8_t pad0[11];
3622 uint32_t full_sequence;
3623 } xcb_input_device_changed_event_t;
3624
3625 typedef enum xcb_input_key_event_flags_t {
3626 XCB_INPUT_KEY_EVENT_FLAGS_KEY_REPEAT = 65536
3627 } xcb_input_key_event_flags_t;
3628
3629 /** Opcode for xcb_input_key_press. */
3630 #define XCB_INPUT_KEY_PRESS 2
3631
3632 /**
3633 * @brief xcb_input_key_press_event_t
3634 **/
3635 typedef struct xcb_input_key_press_event_t {
3636 uint8_t response_type;
3637 uint8_t extension;
3638 uint16_t sequence;
3639 uint32_t length;
3640 uint16_t event_type;
3641 xcb_input_device_id_t deviceid;
3642 xcb_timestamp_t time;
3643 uint32_t detail;
3644 xcb_window_t root;
3645 xcb_window_t event;
3646 xcb_window_t child;
3647 uint32_t full_sequence;
3648 xcb_input_fp1616_t root_x;
3649 xcb_input_fp1616_t root_y;
3650 xcb_input_fp1616_t event_x;
3651 xcb_input_fp1616_t event_y;
3652 uint16_t buttons_len;
3653 uint16_t valuators_len;
3654 xcb_input_device_id_t sourceid;
3655 uint8_t pad0[2];
3656 uint32_t flags;
3657 xcb_input_modifier_info_t mods;
3658 xcb_input_group_info_t group;
3659 } xcb_input_key_press_event_t;
3660
3661 /** Opcode for xcb_input_key_release. */
3662 #define XCB_INPUT_KEY_RELEASE 3
3663
3664 typedef xcb_input_key_press_event_t xcb_input_key_release_event_t;
3665
3666 typedef enum xcb_input_pointer_event_flags_t {
3667 XCB_INPUT_POINTER_EVENT_FLAGS_POINTER_EMULATED = 65536
3668 } xcb_input_pointer_event_flags_t;
3669
3670 /** Opcode for xcb_input_button_press. */
3671 #define XCB_INPUT_BUTTON_PRESS 4
3672
3673 /**
3674 * @brief xcb_input_button_press_event_t
3675 **/
3676 typedef struct xcb_input_button_press_event_t {
3677 uint8_t response_type;
3678 uint8_t extension;
3679 uint16_t sequence;
3680 uint32_t length;
3681 uint16_t event_type;
3682 xcb_input_device_id_t deviceid;
3683 xcb_timestamp_t time;
3684 uint32_t detail;
3685 xcb_window_t root;
3686 xcb_window_t event;
3687 xcb_window_t child;
3688 uint32_t full_sequence;
3689 xcb_input_fp1616_t root_x;
3690 xcb_input_fp1616_t root_y;
3691 xcb_input_fp1616_t event_x;
3692 xcb_input_fp1616_t event_y;
3693 uint16_t buttons_len;
3694 uint16_t valuators_len;
3695 xcb_input_device_id_t sourceid;
3696 uint8_t pad0[2];
3697 uint32_t flags;
3698 xcb_input_modifier_info_t mods;
3699 xcb_input_group_info_t group;
3700 } xcb_input_button_press_event_t;
3701
3702 /** Opcode for xcb_input_button_release. */
3703 #define XCB_INPUT_BUTTON_RELEASE 5
3704
3705 typedef xcb_input_button_press_event_t xcb_input_button_release_event_t;
3706
3707 /** Opcode for xcb_input_motion. */
3708 #define XCB_INPUT_MOTION 6
3709
3710 typedef xcb_input_button_press_event_t xcb_input_motion_event_t;
3711
3712 typedef enum xcb_input_notify_mode_t {
3713 XCB_INPUT_NOTIFY_MODE_NORMAL = 0,
3714 XCB_INPUT_NOTIFY_MODE_GRAB = 1,
3715 XCB_INPUT_NOTIFY_MODE_UNGRAB = 2,
3716 XCB_INPUT_NOTIFY_MODE_WHILE_GRABBED = 3,
3717 XCB_INPUT_NOTIFY_MODE_PASSIVE_GRAB = 4,
3718 XCB_INPUT_NOTIFY_MODE_PASSIVE_UNGRAB = 5
3719 } xcb_input_notify_mode_t;
3720
3721 typedef enum xcb_input_notify_detail_t {
3722 XCB_INPUT_NOTIFY_DETAIL_ANCESTOR = 0,
3723 XCB_INPUT_NOTIFY_DETAIL_VIRTUAL = 1,
3724 XCB_INPUT_NOTIFY_DETAIL_INFERIOR = 2,
3725 XCB_INPUT_NOTIFY_DETAIL_NONLINEAR = 3,
3726 XCB_INPUT_NOTIFY_DETAIL_NONLINEAR_VIRTUAL = 4,
3727 XCB_INPUT_NOTIFY_DETAIL_POINTER = 5,
3728 XCB_INPUT_NOTIFY_DETAIL_POINTER_ROOT = 6,
3729 XCB_INPUT_NOTIFY_DETAIL_NONE = 7
3730 } xcb_input_notify_detail_t;
3731
3732 /** Opcode for xcb_input_enter. */
3733 #define XCB_INPUT_ENTER 7
3734
3735 /**
3736 * @brief xcb_input_enter_event_t
3737 **/
3738 typedef struct xcb_input_enter_event_t {
3739 uint8_t response_type;
3740 uint8_t extension;
3741 uint16_t sequence;
3742 uint32_t length;
3743 uint16_t event_type;
3744 xcb_input_device_id_t deviceid;
3745 xcb_timestamp_t time;
3746 xcb_input_device_id_t sourceid;
3747 uint8_t mode;
3748 uint8_t detail;
3749 xcb_window_t root;
3750 xcb_window_t event;
3751 xcb_window_t child;
3752 uint32_t full_sequence;
3753 xcb_input_fp1616_t root_x;
3754 xcb_input_fp1616_t root_y;
3755 xcb_input_fp1616_t event_x;
3756 xcb_input_fp1616_t event_y;
3757 uint8_t same_screen;
3758 uint8_t focus;
3759 uint16_t buttons_len;
3760 xcb_input_modifier_info_t mods;
3761 xcb_input_group_info_t group;
3762 } xcb_input_enter_event_t;
3763
3764 /** Opcode for xcb_input_leave. */
3765 #define XCB_INPUT_LEAVE 8
3766
3767 typedef xcb_input_enter_event_t xcb_input_leave_event_t;
3768
3769 /** Opcode for xcb_input_focus_in. */
3770 #define XCB_INPUT_FOCUS_IN 9
3771
3772 typedef xcb_input_enter_event_t xcb_input_focus_in_event_t;
3773
3774 /** Opcode for xcb_input_focus_out. */
3775 #define XCB_INPUT_FOCUS_OUT 10
3776
3777 typedef xcb_input_enter_event_t xcb_input_focus_out_event_t;
3778
3779 typedef enum xcb_input_hierarchy_mask_t {
3780 XCB_INPUT_HIERARCHY_MASK_MASTER_ADDED = 1,
3781 XCB_INPUT_HIERARCHY_MASK_MASTER_REMOVED = 2,
3782 XCB_INPUT_HIERARCHY_MASK_SLAVE_ADDED = 4,
3783 XCB_INPUT_HIERARCHY_MASK_SLAVE_REMOVED = 8,
3784 XCB_INPUT_HIERARCHY_MASK_SLAVE_ATTACHED = 16,
3785 XCB_INPUT_HIERARCHY_MASK_SLAVE_DETACHED = 32,
3786 XCB_INPUT_HIERARCHY_MASK_DEVICE_ENABLED = 64,
3787 XCB_INPUT_HIERARCHY_MASK_DEVICE_DISABLED = 128
3788 } xcb_input_hierarchy_mask_t;
3789
3790 /**
3791 * @brief xcb_input_hierarchy_info_t
3792 **/
3793 typedef struct xcb_input_hierarchy_info_t {
3794 xcb_input_device_id_t deviceid;
3795 xcb_input_device_id_t attachment;
3796 uint8_t type;
3797 uint8_t enabled;
3798 uint8_t pad0[2];
3799 uint32_t flags;
3800 } xcb_input_hierarchy_info_t;
3801
3802 /**
3803 * @brief xcb_input_hierarchy_info_iterator_t
3804 **/
3805 typedef struct xcb_input_hierarchy_info_iterator_t {
3806 xcb_input_hierarchy_info_t *data;
3807 int rem;
3808 int index;
3809 } xcb_input_hierarchy_info_iterator_t;
3810
3811 /** Opcode for xcb_input_hierarchy. */
3812 #define XCB_INPUT_HIERARCHY 11
3813
3814 /**
3815 * @brief xcb_input_hierarchy_event_t
3816 **/
3817 typedef struct xcb_input_hierarchy_event_t {
3818 uint8_t response_type;
3819 uint8_t extension;
3820 uint16_t sequence;
3821 uint32_t length;
3822 uint16_t event_type;
3823 xcb_input_device_id_t deviceid;
3824 xcb_timestamp_t time;
3825 uint32_t flags;
3826 uint16_t num_infos;
3827 uint8_t pad0[10];
3828 uint32_t full_sequence;
3829 } xcb_input_hierarchy_event_t;
3830
3831 typedef enum xcb_input_property_flag_t {
3832 XCB_INPUT_PROPERTY_FLAG_DELETED = 0,
3833 XCB_INPUT_PROPERTY_FLAG_CREATED = 1,
3834 XCB_INPUT_PROPERTY_FLAG_MODIFIED = 2
3835 } xcb_input_property_flag_t;
3836
3837 /** Opcode for xcb_input_property. */
3838 #define XCB_INPUT_PROPERTY 12
3839
3840 /**
3841 * @brief xcb_input_property_event_t
3842 **/
3843 typedef struct xcb_input_property_event_t {
3844 uint8_t response_type;
3845 uint8_t extension;
3846 uint16_t sequence;
3847 uint32_t length;
3848 uint16_t event_type;
3849 xcb_input_device_id_t deviceid;
3850 xcb_timestamp_t time;
3851 xcb_atom_t property;
3852 uint8_t what;
3853 uint8_t pad0[11];
3854 uint32_t full_sequence;
3855 } xcb_input_property_event_t;
3856
3857 /** Opcode for xcb_input_raw_key_press. */
3858 #define XCB_INPUT_RAW_KEY_PRESS 13
3859
3860 /**
3861 * @brief xcb_input_raw_key_press_event_t
3862 **/
3863 typedef struct xcb_input_raw_key_press_event_t {
3864 uint8_t response_type;
3865 uint8_t extension;
3866 uint16_t sequence;
3867 uint32_t length;
3868 uint16_t event_type;
3869 xcb_input_device_id_t deviceid;
3870 xcb_timestamp_t time;
3871 uint32_t detail;
3872 xcb_input_device_id_t sourceid;
3873 uint16_t valuators_len;
3874 uint32_t flags;
3875 uint8_t pad0[4];
3876 uint32_t full_sequence;
3877 } xcb_input_raw_key_press_event_t;
3878
3879 /** Opcode for xcb_input_raw_key_release. */
3880 #define XCB_INPUT_RAW_KEY_RELEASE 14
3881
3882 typedef xcb_input_raw_key_press_event_t xcb_input_raw_key_release_event_t;
3883
3884 /** Opcode for xcb_input_raw_button_press. */
3885 #define XCB_INPUT_RAW_BUTTON_PRESS 15
3886
3887 /**
3888 * @brief xcb_input_raw_button_press_event_t
3889 **/
3890 typedef struct xcb_input_raw_button_press_event_t {
3891 uint8_t response_type;
3892 uint8_t extension;
3893 uint16_t sequence;
3894 uint32_t length;
3895 uint16_t event_type;
3896 xcb_input_device_id_t deviceid;
3897 xcb_timestamp_t time;
3898 uint32_t detail;
3899 xcb_input_device_id_t sourceid;
3900 uint16_t valuators_len;
3901 uint32_t flags;
3902 uint8_t pad0[4];
3903 uint32_t full_sequence;
3904 } xcb_input_raw_button_press_event_t;
3905
3906 /** Opcode for xcb_input_raw_button_release. */
3907 #define XCB_INPUT_RAW_BUTTON_RELEASE 16
3908
3909 typedef xcb_input_raw_button_press_event_t xcb_input_raw_button_release_event_t;
3910
3911 /** Opcode for xcb_input_raw_motion. */
3912 #define XCB_INPUT_RAW_MOTION 17
3913
3914 typedef xcb_input_raw_button_press_event_t xcb_input_raw_motion_event_t;
3915
3916 typedef enum xcb_input_touch_event_flags_t {
3917 XCB_INPUT_TOUCH_EVENT_FLAGS_TOUCH_PENDING_END = 65536,
3918 XCB_INPUT_TOUCH_EVENT_FLAGS_TOUCH_EMULATING_POINTER = 131072
3919 } xcb_input_touch_event_flags_t;
3920
3921 /** Opcode for xcb_input_touch_begin. */
3922 #define XCB_INPUT_TOUCH_BEGIN 18
3923
3924 /**
3925 * @brief xcb_input_touch_begin_event_t
3926 **/
3927 typedef struct xcb_input_touch_begin_event_t {
3928 uint8_t response_type;
3929 uint8_t extension;
3930 uint16_t sequence;
3931 uint32_t length;
3932 uint16_t event_type;
3933 xcb_input_device_id_t deviceid;
3934 xcb_timestamp_t time;
3935 uint32_t detail;
3936 xcb_window_t root;
3937 xcb_window_t event;
3938 xcb_window_t child;
3939 uint32_t full_sequence;
3940 xcb_input_fp1616_t root_x;
3941 xcb_input_fp1616_t root_y;
3942 xcb_input_fp1616_t event_x;
3943 xcb_input_fp1616_t event_y;
3944 uint16_t buttons_len;
3945 uint16_t valuators_len;
3946 xcb_input_device_id_t sourceid;
3947 uint8_t pad0[2];
3948 uint32_t flags;
3949 xcb_input_modifier_info_t mods;
3950 xcb_input_group_info_t group;
3951 } xcb_input_touch_begin_event_t;
3952
3953 /** Opcode for xcb_input_touch_update. */
3954 #define XCB_INPUT_TOUCH_UPDATE 19
3955
3956 typedef xcb_input_touch_begin_event_t xcb_input_touch_update_event_t;
3957
3958 /** Opcode for xcb_input_touch_end. */
3959 #define XCB_INPUT_TOUCH_END 20
3960
3961 typedef xcb_input_touch_begin_event_t xcb_input_touch_end_event_t;
3962
3963 typedef enum xcb_input_touch_ownership_flags_t {
3964 XCB_INPUT_TOUCH_OWNERSHIP_FLAGS_NONE = 0
3965 } xcb_input_touch_ownership_flags_t;
3966
3967 /** Opcode for xcb_input_touch_ownership. */
3968 #define XCB_INPUT_TOUCH_OWNERSHIP 21
3969
3970 /**
3971 * @brief xcb_input_touch_ownership_event_t
3972 **/
3973 typedef struct xcb_input_touch_ownership_event_t {
3974 uint8_t response_type;
3975 uint8_t extension;
3976 uint16_t sequence;
3977 uint32_t length;
3978 uint16_t event_type;
3979 xcb_input_device_id_t deviceid;
3980 xcb_timestamp_t time;
3981 uint32_t touchid;
3982 xcb_window_t root;
3983 xcb_window_t event;
3984 xcb_window_t child;
3985 uint32_t full_sequence;
3986 xcb_input_device_id_t sourceid;
3987 uint8_t pad0[2];
3988 uint32_t flags;
3989 uint8_t pad1[8];
3990 } xcb_input_touch_ownership_event_t;
3991
3992 /** Opcode for xcb_input_raw_touch_begin. */
3993 #define XCB_INPUT_RAW_TOUCH_BEGIN 22
3994
3995 /**
3996 * @brief xcb_input_raw_touch_begin_event_t
3997 **/
3998 typedef struct xcb_input_raw_touch_begin_event_t {
3999 uint8_t response_type;
4000 uint8_t extension;
4001 uint16_t sequence;
4002 uint32_t length;
4003 uint16_t event_type;
4004 xcb_input_device_id_t deviceid;
4005 xcb_timestamp_t time;
4006 uint32_t detail;
4007 xcb_input_device_id_t sourceid;
4008 uint16_t valuators_len;
4009 uint32_t flags;
4010 uint8_t pad0[4];
4011 uint32_t full_sequence;
4012 } xcb_input_raw_touch_begin_event_t;
4013
4014 /** Opcode for xcb_input_raw_touch_update. */
4015 #define XCB_INPUT_RAW_TOUCH_UPDATE 23
4016
4017 typedef xcb_input_raw_touch_begin_event_t xcb_input_raw_touch_update_event_t;
4018
4019 /** Opcode for xcb_input_raw_touch_end. */
4020 #define XCB_INPUT_RAW_TOUCH_END 24
4021
4022 typedef xcb_input_raw_touch_begin_event_t xcb_input_raw_touch_end_event_t;
4023
4024 typedef enum xcb_input_barrier_flags_t {
4025 XCB_INPUT_BARRIER_FLAGS_POINTER_RELEASED = 1,
4026 XCB_INPUT_BARRIER_FLAGS_DEVICE_IS_GRABBED = 2
4027 } xcb_input_barrier_flags_t;
4028
4029 /** Opcode for xcb_input_barrier_hit. */
4030 #define XCB_INPUT_BARRIER_HIT 25
4031
4032 /**
4033 * @brief xcb_input_barrier_hit_event_t
4034 **/
4035 typedef struct xcb_input_barrier_hit_event_t {
4036 uint8_t response_type;
4037 uint8_t extension;
4038 uint16_t sequence;
4039 uint32_t length;
4040 uint16_t event_type;
4041 xcb_input_device_id_t deviceid;
4042 xcb_timestamp_t time;
4043 uint32_t eventid;
4044 xcb_window_t root;
4045 xcb_window_t event;
4046 xcb_xfixes_barrier_t barrier;
4047 uint32_t full_sequence;
4048 uint32_t dtime;
4049 uint32_t flags;
4050 xcb_input_device_id_t sourceid;
4051 uint8_t pad0[2];
4052 xcb_input_fp1616_t root_x;
4053 xcb_input_fp1616_t root_y;
4054 xcb_input_fp3232_t dx;
4055 xcb_input_fp3232_t dy;
4056 } xcb_input_barrier_hit_event_t;
4057
4058 /** Opcode for xcb_input_barrier_leave. */
4059 #define XCB_INPUT_BARRIER_LEAVE 26
4060
4061 typedef xcb_input_barrier_hit_event_t xcb_input_barrier_leave_event_t;
4062
4063 typedef enum xcb_input_gesture_pinch_event_flags_t {
4064 XCB_INPUT_GESTURE_PINCH_EVENT_FLAGS_GESTURE_PINCH_CANCELLED = 1
4065 } xcb_input_gesture_pinch_event_flags_t;
4066
4067 /** Opcode for xcb_input_gesture_pinch_begin. */
4068 #define XCB_INPUT_GESTURE_PINCH_BEGIN 27
4069
4070 /**
4071 * @brief xcb_input_gesture_pinch_begin_event_t
4072 **/
4073 typedef struct xcb_input_gesture_pinch_begin_event_t {
4074 uint8_t response_type;
4075 uint8_t extension;
4076 uint16_t sequence;
4077 uint32_t length;
4078 uint16_t event_type;
4079 xcb_input_device_id_t deviceid;
4080 xcb_timestamp_t time;
4081 uint32_t detail;
4082 xcb_window_t root;
4083 xcb_window_t event;
4084 xcb_window_t child;
4085 uint32_t full_sequence;
4086 xcb_input_fp1616_t root_x;
4087 xcb_input_fp1616_t root_y;
4088 xcb_input_fp1616_t event_x;
4089 xcb_input_fp1616_t event_y;
4090 xcb_input_fp1616_t delta_x;
4091 xcb_input_fp1616_t delta_y;
4092 xcb_input_fp1616_t delta_unaccel_x;
4093 xcb_input_fp1616_t delta_unaccel_y;
4094 xcb_input_fp1616_t scale;
4095 xcb_input_fp1616_t delta_angle;
4096 xcb_input_device_id_t sourceid;
4097 uint8_t pad0[2];
4098 xcb_input_modifier_info_t mods;
4099 xcb_input_group_info_t group;
4100 uint32_t flags;
4101 } xcb_input_gesture_pinch_begin_event_t;
4102
4103 /** Opcode for xcb_input_gesture_pinch_update. */
4104 #define XCB_INPUT_GESTURE_PINCH_UPDATE 28
4105
4106 typedef xcb_input_gesture_pinch_begin_event_t xcb_input_gesture_pinch_update_event_t;
4107
4108 /** Opcode for xcb_input_gesture_pinch_end. */
4109 #define XCB_INPUT_GESTURE_PINCH_END 29
4110
4111 typedef xcb_input_gesture_pinch_begin_event_t xcb_input_gesture_pinch_end_event_t;
4112
4113 typedef enum xcb_input_gesture_swipe_event_flags_t {
4114 XCB_INPUT_GESTURE_SWIPE_EVENT_FLAGS_GESTURE_SWIPE_CANCELLED = 1
4115 } xcb_input_gesture_swipe_event_flags_t;
4116
4117 /** Opcode for xcb_input_gesture_swipe_begin. */
4118 #define XCB_INPUT_GESTURE_SWIPE_BEGIN 30
4119
4120 /**
4121 * @brief xcb_input_gesture_swipe_begin_event_t
4122 **/
4123 typedef struct xcb_input_gesture_swipe_begin_event_t {
4124 uint8_t response_type;
4125 uint8_t extension;
4126 uint16_t sequence;
4127 uint32_t length;
4128 uint16_t event_type;
4129 xcb_input_device_id_t deviceid;
4130 xcb_timestamp_t time;
4131 uint32_t detail;
4132 xcb_window_t root;
4133 xcb_window_t event;
4134 xcb_window_t child;
4135 uint32_t full_sequence;
4136 xcb_input_fp1616_t root_x;
4137 xcb_input_fp1616_t root_y;
4138 xcb_input_fp1616_t event_x;
4139 xcb_input_fp1616_t event_y;
4140 xcb_input_fp1616_t delta_x;
4141 xcb_input_fp1616_t delta_y;
4142 xcb_input_fp1616_t delta_unaccel_x;
4143 xcb_input_fp1616_t delta_unaccel_y;
4144 xcb_input_device_id_t sourceid;
4145 uint8_t pad0[2];
4146 xcb_input_modifier_info_t mods;
4147 xcb_input_group_info_t group;
4148 uint32_t flags;
4149 } xcb_input_gesture_swipe_begin_event_t;
4150
4151 /** Opcode for xcb_input_gesture_swipe_update. */
4152 #define XCB_INPUT_GESTURE_SWIPE_UPDATE 31
4153
4154 typedef xcb_input_gesture_swipe_begin_event_t xcb_input_gesture_swipe_update_event_t;
4155
4156 /** Opcode for xcb_input_gesture_swipe_end. */
4157 #define XCB_INPUT_GESTURE_SWIPE_END 32
4158
4159 typedef xcb_input_gesture_swipe_begin_event_t xcb_input_gesture_swipe_end_event_t;
4160
4161 /**
4162 * @brief xcb_input_event_for_send_t
4163 **/
4164 typedef union xcb_input_event_for_send_t {
4165 xcb_input_device_valuator_event_t device_valuator;
4166 xcb_input_device_key_press_event_t device_key_press;
4167 xcb_input_device_key_release_event_t device_key_release;
4168 xcb_input_device_button_press_event_t device_button_press;
4169 xcb_input_device_button_release_event_t device_button_release;
4170 xcb_input_device_motion_notify_event_t device_motion_notify;
4171 xcb_input_device_focus_in_event_t device_focus_in;
4172 xcb_input_device_focus_out_event_t device_focus_out;
4173 xcb_input_proximity_in_event_t proximity_in;
4174 xcb_input_proximity_out_event_t proximity_out;
4175 xcb_input_device_state_notify_event_t device_state_notify;
4176 xcb_input_device_mapping_notify_event_t device_mapping_notify;
4177 xcb_input_change_device_notify_event_t change_device_notify;
4178 xcb_input_device_key_state_notify_event_t device_key_state_notify;
4179 xcb_input_device_button_state_notify_event_t device_button_state_notify;
4180 xcb_input_device_presence_notify_event_t device_presence_notify;
4181 xcb_raw_generic_event_t event_header;
4182 } xcb_input_event_for_send_t;
4183
4184 /**
4185 * @brief xcb_input_event_for_send_iterator_t
4186 **/
4187 typedef struct xcb_input_event_for_send_iterator_t {
4188 xcb_input_event_for_send_t *data;
4189 int rem;
4190 int index;
4191 } xcb_input_event_for_send_iterator_t;
4192
4193 /** Opcode for xcb_input_send_extension_event. */
4194 #define XCB_INPUT_SEND_EXTENSION_EVENT 31
4195
4196 /**
4197 * @brief xcb_input_send_extension_event_request_t
4198 **/
4199 typedef struct xcb_input_send_extension_event_request_t {
4200 uint8_t major_opcode;
4201 uint8_t minor_opcode;
4202 uint16_t length;
4203 xcb_window_t destination;
4204 uint8_t device_id;
4205 uint8_t propagate;
4206 uint16_t num_classes;
4207 uint8_t num_events;
4208 uint8_t pad0[3];
4209 } xcb_input_send_extension_event_request_t;
4210
4211 /** Opcode for xcb_input_device. */
4212 #define XCB_INPUT_DEVICE 0
4213
4214 /**
4215 * @brief xcb_input_device_error_t
4216 **/
4217 typedef struct xcb_input_device_error_t {
4218 uint8_t response_type;
4219 uint8_t error_code;
4220 uint16_t sequence;
4221 uint32_t bad_value;
4222 uint16_t minor_opcode;
4223 uint8_t major_opcode;
4224 } xcb_input_device_error_t;
4225
4226 /** Opcode for xcb_input_event. */
4227 #define XCB_INPUT_EVENT 1
4228
4229 /**
4230 * @brief xcb_input_event_error_t
4231 **/
4232 typedef struct xcb_input_event_error_t {
4233 uint8_t response_type;
4234 uint8_t error_code;
4235 uint16_t sequence;
4236 uint32_t bad_value;
4237 uint16_t minor_opcode;
4238 uint8_t major_opcode;
4239 } xcb_input_event_error_t;
4240
4241 /** Opcode for xcb_input_mode. */
4242 #define XCB_INPUT_MODE 2
4243
4244 /**
4245 * @brief xcb_input_mode_error_t
4246 **/
4247 typedef struct xcb_input_mode_error_t {
4248 uint8_t response_type;
4249 uint8_t error_code;
4250 uint16_t sequence;
4251 uint32_t bad_value;
4252 uint16_t minor_opcode;
4253 uint8_t major_opcode;
4254 } xcb_input_mode_error_t;
4255
4256 /** Opcode for xcb_input_device_busy. */
4257 #define XCB_INPUT_DEVICE_BUSY 3
4258
4259 /**
4260 * @brief xcb_input_device_busy_error_t
4261 **/
4262 typedef struct xcb_input_device_busy_error_t {
4263 uint8_t response_type;
4264 uint8_t error_code;
4265 uint16_t sequence;
4266 uint32_t bad_value;
4267 uint16_t minor_opcode;
4268 uint8_t major_opcode;
4269 } xcb_input_device_busy_error_t;
4270
4271 /** Opcode for xcb_input_class. */
4272 #define XCB_INPUT_CLASS 4
4273
4274 /**
4275 * @brief xcb_input_class_error_t
4276 **/
4277 typedef struct xcb_input_class_error_t {
4278 uint8_t response_type;
4279 uint8_t error_code;
4280 uint16_t sequence;
4281 uint32_t bad_value;
4282 uint16_t minor_opcode;
4283 uint8_t major_opcode;
4284 } xcb_input_class_error_t;
4285
4286 /**
4287 * Get the next element of the iterator
4288 * @param i Pointer to a xcb_input_event_class_iterator_t
4289 *
4290 * Get the next element in the iterator. The member rem is
4291 * decreased by one. The member data points to the next
4292 * element. The member index is increased by sizeof(xcb_input_event_class_t)
4293 */
4294 void
4295 xcb_input_event_class_next (xcb_input_event_class_iterator_t *i);
4296
4297 /**
4298 * Return the iterator pointing to the last element
4299 * @param i An xcb_input_event_class_iterator_t
4300 * @return The iterator pointing to the last element
4301 *
4302 * Set the current element in the iterator to the last element.
4303 * The member rem is set to 0. The member data points to the
4304 * last element.
4305 */
4306 xcb_generic_iterator_t
4307 xcb_input_event_class_end (xcb_input_event_class_iterator_t i);
4308
4309 /**
4310 * Get the next element of the iterator
4311 * @param i Pointer to a xcb_input_key_code_iterator_t
4312 *
4313 * Get the next element in the iterator. The member rem is
4314 * decreased by one. The member data points to the next
4315 * element. The member index is increased by sizeof(xcb_input_key_code_t)
4316 */
4317 void
4318 xcb_input_key_code_next (xcb_input_key_code_iterator_t *i);
4319
4320 /**
4321 * Return the iterator pointing to the last element
4322 * @param i An xcb_input_key_code_iterator_t
4323 * @return The iterator pointing to the last element
4324 *
4325 * Set the current element in the iterator to the last element.
4326 * The member rem is set to 0. The member data points to the
4327 * last element.
4328 */
4329 xcb_generic_iterator_t
4330 xcb_input_key_code_end (xcb_input_key_code_iterator_t i);
4331
4332 /**
4333 * Get the next element of the iterator
4334 * @param i Pointer to a xcb_input_device_id_iterator_t
4335 *
4336 * Get the next element in the iterator. The member rem is
4337 * decreased by one. The member data points to the next
4338 * element. The member index is increased by sizeof(xcb_input_device_id_t)
4339 */
4340 void
4341 xcb_input_device_id_next (xcb_input_device_id_iterator_t *i);
4342
4343 /**
4344 * Return the iterator pointing to the last element
4345 * @param i An xcb_input_device_id_iterator_t
4346 * @return The iterator pointing to the last element
4347 *
4348 * Set the current element in the iterator to the last element.
4349 * The member rem is set to 0. The member data points to the
4350 * last element.
4351 */
4352 xcb_generic_iterator_t
4353 xcb_input_device_id_end (xcb_input_device_id_iterator_t i);
4354
4355 /**
4356 * Get the next element of the iterator
4357 * @param i Pointer to a xcb_input_fp1616_iterator_t
4358 *
4359 * Get the next element in the iterator. The member rem is
4360 * decreased by one. The member data points to the next
4361 * element. The member index is increased by sizeof(xcb_input_fp1616_t)
4362 */
4363 void
4364 xcb_input_fp1616_next (xcb_input_fp1616_iterator_t *i);
4365
4366 /**
4367 * Return the iterator pointing to the last element
4368 * @param i An xcb_input_fp1616_iterator_t
4369 * @return The iterator pointing to the last element
4370 *
4371 * Set the current element in the iterator to the last element.
4372 * The member rem is set to 0. The member data points to the
4373 * last element.
4374 */
4375 xcb_generic_iterator_t
4376 xcb_input_fp1616_end (xcb_input_fp1616_iterator_t i);
4377
4378 /**
4379 * Get the next element of the iterator
4380 * @param i Pointer to a xcb_input_fp3232_iterator_t
4381 *
4382 * Get the next element in the iterator. The member rem is
4383 * decreased by one. The member data points to the next
4384 * element. The member index is increased by sizeof(xcb_input_fp3232_t)
4385 */
4386 void
4387 xcb_input_fp3232_next (xcb_input_fp3232_iterator_t *i);
4388
4389 /**
4390 * Return the iterator pointing to the last element
4391 * @param i An xcb_input_fp3232_iterator_t
4392 * @return The iterator pointing to the last element
4393 *
4394 * Set the current element in the iterator to the last element.
4395 * The member rem is set to 0. The member data points to the
4396 * last element.
4397 */
4398 xcb_generic_iterator_t
4399 xcb_input_fp3232_end (xcb_input_fp3232_iterator_t i);
4400
4401 int
4402 xcb_input_get_extension_version_sizeof (const void *_buffer);
4403
4404 /**
4405 *
4406 * @param c The connection
4407 * @return A cookie
4408 *
4409 * Delivers a request to the X server.
4410 *
4411 */
4412 xcb_input_get_extension_version_cookie_t
4413 xcb_input_get_extension_version (xcb_connection_t *c,
4414 uint16_t name_len,
4415 const char *name);
4416
4417 /**
4418 *
4419 * @param c The connection
4420 * @return A cookie
4421 *
4422 * Delivers a request to the X server.
4423 *
4424 * This form can be used only if the request will cause
4425 * a reply to be generated. Any returned error will be
4426 * placed in the event queue.
4427 */
4428 xcb_input_get_extension_version_cookie_t
4429 xcb_input_get_extension_version_unchecked (xcb_connection_t *c,
4430 uint16_t name_len,
4431 const char *name);
4432
4433 /**
4434 * Return the reply
4435 * @param c The connection
4436 * @param cookie The cookie
4437 * @param e The xcb_generic_error_t supplied
4438 *
4439 * Returns the reply of the request asked by
4440 *
4441 * The parameter @p e supplied to this function must be NULL if
4442 * xcb_input_get_extension_version_unchecked(). is used.
4443 * Otherwise, it stores the error if any.
4444 *
4445 * The returned value must be freed by the caller using free().
4446 */
4447 xcb_input_get_extension_version_reply_t *
4448 xcb_input_get_extension_version_reply (xcb_connection_t *c,
4449 xcb_input_get_extension_version_cookie_t cookie /**< */,
4450 xcb_generic_error_t **e);
4451
4452 /**
4453 * Get the next element of the iterator
4454 * @param i Pointer to a xcb_input_device_info_iterator_t
4455 *
4456 * Get the next element in the iterator. The member rem is
4457 * decreased by one. The member data points to the next
4458 * element. The member index is increased by sizeof(xcb_input_device_info_t)
4459 */
4460 void
4461 xcb_input_device_info_next (xcb_input_device_info_iterator_t *i);
4462
4463 /**
4464 * Return the iterator pointing to the last element
4465 * @param i An xcb_input_device_info_iterator_t
4466 * @return The iterator pointing to the last element
4467 *
4468 * Set the current element in the iterator to the last element.
4469 * The member rem is set to 0. The member data points to the
4470 * last element.
4471 */
4472 xcb_generic_iterator_t
4473 xcb_input_device_info_end (xcb_input_device_info_iterator_t i);
4474
4475 /**
4476 * Get the next element of the iterator
4477 * @param i Pointer to a xcb_input_key_info_iterator_t
4478 *
4479 * Get the next element in the iterator. The member rem is
4480 * decreased by one. The member data points to the next
4481 * element. The member index is increased by sizeof(xcb_input_key_info_t)
4482 */
4483 void
4484 xcb_input_key_info_next (xcb_input_key_info_iterator_t *i);
4485
4486 /**
4487 * Return the iterator pointing to the last element
4488 * @param i An xcb_input_key_info_iterator_t
4489 * @return The iterator pointing to the last element
4490 *
4491 * Set the current element in the iterator to the last element.
4492 * The member rem is set to 0. The member data points to the
4493 * last element.
4494 */
4495 xcb_generic_iterator_t
4496 xcb_input_key_info_end (xcb_input_key_info_iterator_t i);
4497
4498 /**
4499 * Get the next element of the iterator
4500 * @param i Pointer to a xcb_input_button_info_iterator_t
4501 *
4502 * Get the next element in the iterator. The member rem is
4503 * decreased by one. The member data points to the next
4504 * element. The member index is increased by sizeof(xcb_input_button_info_t)
4505 */
4506 void
4507 xcb_input_button_info_next (xcb_input_button_info_iterator_t *i);
4508
4509 /**
4510 * Return the iterator pointing to the last element
4511 * @param i An xcb_input_button_info_iterator_t
4512 * @return The iterator pointing to the last element
4513 *
4514 * Set the current element in the iterator to the last element.
4515 * The member rem is set to 0. The member data points to the
4516 * last element.
4517 */
4518 xcb_generic_iterator_t
4519 xcb_input_button_info_end (xcb_input_button_info_iterator_t i);
4520
4521 /**
4522 * Get the next element of the iterator
4523 * @param i Pointer to a xcb_input_axis_info_iterator_t
4524 *
4525 * Get the next element in the iterator. The member rem is
4526 * decreased by one. The member data points to the next
4527 * element. The member index is increased by sizeof(xcb_input_axis_info_t)
4528 */
4529 void
4530 xcb_input_axis_info_next (xcb_input_axis_info_iterator_t *i);
4531
4532 /**
4533 * Return the iterator pointing to the last element
4534 * @param i An xcb_input_axis_info_iterator_t
4535 * @return The iterator pointing to the last element
4536 *
4537 * Set the current element in the iterator to the last element.
4538 * The member rem is set to 0. The member data points to the
4539 * last element.
4540 */
4541 xcb_generic_iterator_t
4542 xcb_input_axis_info_end (xcb_input_axis_info_iterator_t i);
4543
4544 int
4545 xcb_input_valuator_info_sizeof (const void *_buffer);
4546
4547 xcb_input_axis_info_t *
4548 xcb_input_valuator_info_axes (const xcb_input_valuator_info_t *R);
4549
4550 int
4551 xcb_input_valuator_info_axes_length (const xcb_input_valuator_info_t *R);
4552
4553 xcb_input_axis_info_iterator_t
4554 xcb_input_valuator_info_axes_iterator (const xcb_input_valuator_info_t *R);
4555
4556 /**
4557 * Get the next element of the iterator
4558 * @param i Pointer to a xcb_input_valuator_info_iterator_t
4559 *
4560 * Get the next element in the iterator. The member rem is
4561 * decreased by one. The member data points to the next
4562 * element. The member index is increased by sizeof(xcb_input_valuator_info_t)
4563 */
4564 void
4565 xcb_input_valuator_info_next (xcb_input_valuator_info_iterator_t *i);
4566
4567 /**
4568 * Return the iterator pointing to the last element
4569 * @param i An xcb_input_valuator_info_iterator_t
4570 * @return The iterator pointing to the last element
4571 *
4572 * Set the current element in the iterator to the last element.
4573 * The member rem is set to 0. The member data points to the
4574 * last element.
4575 */
4576 xcb_generic_iterator_t
4577 xcb_input_valuator_info_end (xcb_input_valuator_info_iterator_t i);
4578
4579 xcb_input_axis_info_t *
4580 xcb_input_input_info_info_valuator_axes (const xcb_input_input_info_info_t *S);
4581
4582 int
4583 xcb_input_input_info_info_valuator_axes_length (const xcb_input_input_info_t *R,
4584 const xcb_input_input_info_info_t *S);
4585
4586 xcb_input_axis_info_iterator_t
4587 xcb_input_input_info_info_valuator_axes_iterator (const xcb_input_input_info_t *R,
4588 const xcb_input_input_info_info_t *S);
4589
4590 int
4591 xcb_input_input_info_info_serialize (void **_buffer,
4592 uint8_t class_id,
4593 const xcb_input_input_info_info_t *_aux);
4594
4595 int
4596 xcb_input_input_info_info_unpack (const void *_buffer,
4597 uint8_t class_id,
4598 xcb_input_input_info_info_t *_aux);
4599
4600 int
4601 xcb_input_input_info_info_sizeof (const void *_buffer,
4602 uint8_t class_id);
4603
4604 int
4605 xcb_input_input_info_sizeof (const void *_buffer);
4606
4607 /**
4608 * Get the next element of the iterator
4609 * @param i Pointer to a xcb_input_input_info_iterator_t
4610 *
4611 * Get the next element in the iterator. The member rem is
4612 * decreased by one. The member data points to the next
4613 * element. The member index is increased by sizeof(xcb_input_input_info_t)
4614 */
4615 void
4616 xcb_input_input_info_next (xcb_input_input_info_iterator_t *i);
4617
4618 /**
4619 * Return the iterator pointing to the last element
4620 * @param i An xcb_input_input_info_iterator_t
4621 * @return The iterator pointing to the last element
4622 *
4623 * Set the current element in the iterator to the last element.
4624 * The member rem is set to 0. The member data points to the
4625 * last element.
4626 */
4627 xcb_generic_iterator_t
4628 xcb_input_input_info_end (xcb_input_input_info_iterator_t i);
4629
4630 int
4631 xcb_input_device_name_sizeof (const void *_buffer);
4632
4633 char *
4634 xcb_input_device_name_string (const xcb_input_device_name_t *R);
4635
4636 int
4637 xcb_input_device_name_string_length (const xcb_input_device_name_t *R);
4638
4639 xcb_generic_iterator_t
4640 xcb_input_device_name_string_end (const xcb_input_device_name_t *R);
4641
4642 /**
4643 * Get the next element of the iterator
4644 * @param i Pointer to a xcb_input_device_name_iterator_t
4645 *
4646 * Get the next element in the iterator. The member rem is
4647 * decreased by one. The member data points to the next
4648 * element. The member index is increased by sizeof(xcb_input_device_name_t)
4649 */
4650 void
4651 xcb_input_device_name_next (xcb_input_device_name_iterator_t *i);
4652
4653 /**
4654 * Return the iterator pointing to the last element
4655 * @param i An xcb_input_device_name_iterator_t
4656 * @return The iterator pointing to the last element
4657 *
4658 * Set the current element in the iterator to the last element.
4659 * The member rem is set to 0. The member data points to the
4660 * last element.
4661 */
4662 xcb_generic_iterator_t
4663 xcb_input_device_name_end (xcb_input_device_name_iterator_t i);
4664
4665 int
4666 xcb_input_list_input_devices_sizeof (const void *_buffer);
4667
4668 /**
4669 *
4670 * @param c The connection
4671 * @return A cookie
4672 *
4673 * Delivers a request to the X server.
4674 *
4675 */
4676 xcb_input_list_input_devices_cookie_t
4677 xcb_input_list_input_devices (xcb_connection_t *c);
4678
4679 /**
4680 *
4681 * @param c The connection
4682 * @return A cookie
4683 *
4684 * Delivers a request to the X server.
4685 *
4686 * This form can be used only if the request will cause
4687 * a reply to be generated. Any returned error will be
4688 * placed in the event queue.
4689 */
4690 xcb_input_list_input_devices_cookie_t
4691 xcb_input_list_input_devices_unchecked (xcb_connection_t *c);
4692
4693 xcb_input_device_info_t *
4694 xcb_input_list_input_devices_devices (const xcb_input_list_input_devices_reply_t *R);
4695
4696 int
4697 xcb_input_list_input_devices_devices_length (const xcb_input_list_input_devices_reply_t *R);
4698
4699 xcb_input_device_info_iterator_t
4700 xcb_input_list_input_devices_devices_iterator (const xcb_input_list_input_devices_reply_t *R);
4701
4702 int
4703 xcb_input_list_input_devices_infos_length (const xcb_input_list_input_devices_reply_t *R);
4704
4705 xcb_input_input_info_iterator_t
4706 xcb_input_list_input_devices_infos_iterator (const xcb_input_list_input_devices_reply_t *R);
4707
4708 int
4709 xcb_input_list_input_devices_names_length (const xcb_input_list_input_devices_reply_t *R);
4710
4711 xcb_str_iterator_t
4712 xcb_input_list_input_devices_names_iterator (const xcb_input_list_input_devices_reply_t *R);
4713
4714 /**
4715 * Return the reply
4716 * @param c The connection
4717 * @param cookie The cookie
4718 * @param e The xcb_generic_error_t supplied
4719 *
4720 * Returns the reply of the request asked by
4721 *
4722 * The parameter @p e supplied to this function must be NULL if
4723 * xcb_input_list_input_devices_unchecked(). is used.
4724 * Otherwise, it stores the error if any.
4725 *
4726 * The returned value must be freed by the caller using free().
4727 */
4728 xcb_input_list_input_devices_reply_t *
4729 xcb_input_list_input_devices_reply (xcb_connection_t *c,
4730 xcb_input_list_input_devices_cookie_t cookie /**< */,
4731 xcb_generic_error_t **e);
4732
4733 /**
4734 * Get the next element of the iterator
4735 * @param i Pointer to a xcb_input_event_type_base_iterator_t
4736 *
4737 * Get the next element in the iterator. The member rem is
4738 * decreased by one. The member data points to the next
4739 * element. The member index is increased by sizeof(xcb_input_event_type_base_t)
4740 */
4741 void
4742 xcb_input_event_type_base_next (xcb_input_event_type_base_iterator_t *i);
4743
4744 /**
4745 * Return the iterator pointing to the last element
4746 * @param i An xcb_input_event_type_base_iterator_t
4747 * @return The iterator pointing to the last element
4748 *
4749 * Set the current element in the iterator to the last element.
4750 * The member rem is set to 0. The member data points to the
4751 * last element.
4752 */
4753 xcb_generic_iterator_t
4754 xcb_input_event_type_base_end (xcb_input_event_type_base_iterator_t i);
4755
4756 /**
4757 * Get the next element of the iterator
4758 * @param i Pointer to a xcb_input_input_class_info_iterator_t
4759 *
4760 * Get the next element in the iterator. The member rem is
4761 * decreased by one. The member data points to the next
4762 * element. The member index is increased by sizeof(xcb_input_input_class_info_t)
4763 */
4764 void
4765 xcb_input_input_class_info_next (xcb_input_input_class_info_iterator_t *i);
4766
4767 /**
4768 * Return the iterator pointing to the last element
4769 * @param i An xcb_input_input_class_info_iterator_t
4770 * @return The iterator pointing to the last element
4771 *
4772 * Set the current element in the iterator to the last element.
4773 * The member rem is set to 0. The member data points to the
4774 * last element.
4775 */
4776 xcb_generic_iterator_t
4777 xcb_input_input_class_info_end (xcb_input_input_class_info_iterator_t i);
4778
4779 int
4780 xcb_input_open_device_sizeof (const void *_buffer);
4781
4782 /**
4783 *
4784 * @param c The connection
4785 * @return A cookie
4786 *
4787 * Delivers a request to the X server.
4788 *
4789 */
4790 xcb_input_open_device_cookie_t
4791 xcb_input_open_device (xcb_connection_t *c,
4792 uint8_t device_id);
4793
4794 /**
4795 *
4796 * @param c The connection
4797 * @return A cookie
4798 *
4799 * Delivers a request to the X server.
4800 *
4801 * This form can be used only if the request will cause
4802 * a reply to be generated. Any returned error will be
4803 * placed in the event queue.
4804 */
4805 xcb_input_open_device_cookie_t
4806 xcb_input_open_device_unchecked (xcb_connection_t *c,
4807 uint8_t device_id);
4808
4809 xcb_input_input_class_info_t *
4810 xcb_input_open_device_class_info (const xcb_input_open_device_reply_t *R);
4811
4812 int
4813 xcb_input_open_device_class_info_length (const xcb_input_open_device_reply_t *R);
4814
4815 xcb_input_input_class_info_iterator_t
4816 xcb_input_open_device_class_info_iterator (const xcb_input_open_device_reply_t *R);
4817
4818 /**
4819 * Return the reply
4820 * @param c The connection
4821 * @param cookie The cookie
4822 * @param e The xcb_generic_error_t supplied
4823 *
4824 * Returns the reply of the request asked by
4825 *
4826 * The parameter @p e supplied to this function must be NULL if
4827 * xcb_input_open_device_unchecked(). is used.
4828 * Otherwise, it stores the error if any.
4829 *
4830 * The returned value must be freed by the caller using free().
4831 */
4832 xcb_input_open_device_reply_t *
4833 xcb_input_open_device_reply (xcb_connection_t *c,
4834 xcb_input_open_device_cookie_t cookie /**< */,
4835 xcb_generic_error_t **e);
4836
4837 /**
4838 *
4839 * @param c The connection
4840 * @return A cookie
4841 *
4842 * Delivers a request to the X server.
4843 *
4844 * This form can be used only if the request will not cause
4845 * a reply to be generated. Any returned error will be
4846 * saved for handling by xcb_request_check().
4847 */
4848 xcb_void_cookie_t
4849 xcb_input_close_device_checked (xcb_connection_t *c,
4850 uint8_t device_id);
4851
4852 /**
4853 *
4854 * @param c The connection
4855 * @return A cookie
4856 *
4857 * Delivers a request to the X server.
4858 *
4859 */
4860 xcb_void_cookie_t
4861 xcb_input_close_device (xcb_connection_t *c,
4862 uint8_t device_id);
4863
4864 /**
4865 *
4866 * @param c The connection
4867 * @return A cookie
4868 *
4869 * Delivers a request to the X server.
4870 *
4871 */
4872 xcb_input_set_device_mode_cookie_t
4873 xcb_input_set_device_mode (xcb_connection_t *c,
4874 uint8_t device_id,
4875 uint8_t mode);
4876
4877 /**
4878 *
4879 * @param c The connection
4880 * @return A cookie
4881 *
4882 * Delivers a request to the X server.
4883 *
4884 * This form can be used only if the request will cause
4885 * a reply to be generated. Any returned error will be
4886 * placed in the event queue.
4887 */
4888 xcb_input_set_device_mode_cookie_t
4889 xcb_input_set_device_mode_unchecked (xcb_connection_t *c,
4890 uint8_t device_id,
4891 uint8_t mode);
4892
4893 /**
4894 * Return the reply
4895 * @param c The connection
4896 * @param cookie The cookie
4897 * @param e The xcb_generic_error_t supplied
4898 *
4899 * Returns the reply of the request asked by
4900 *
4901 * The parameter @p e supplied to this function must be NULL if
4902 * xcb_input_set_device_mode_unchecked(). is used.
4903 * Otherwise, it stores the error if any.
4904 *
4905 * The returned value must be freed by the caller using free().
4906 */
4907 xcb_input_set_device_mode_reply_t *
4908 xcb_input_set_device_mode_reply (xcb_connection_t *c,
4909 xcb_input_set_device_mode_cookie_t cookie /**< */,
4910 xcb_generic_error_t **e);
4911
4912 int
4913 xcb_input_select_extension_event_sizeof (const void *_buffer);
4914
4915 /**
4916 *
4917 * @param c The connection
4918 * @return A cookie
4919 *
4920 * Delivers a request to the X server.
4921 *
4922 * This form can be used only if the request will not cause
4923 * a reply to be generated. Any returned error will be
4924 * saved for handling by xcb_request_check().
4925 */
4926 xcb_void_cookie_t
4927 xcb_input_select_extension_event_checked (xcb_connection_t *c,
4928 xcb_window_t window,
4929 uint16_t num_classes,
4930 const xcb_input_event_class_t *classes);
4931
4932 /**
4933 *
4934 * @param c The connection
4935 * @return A cookie
4936 *
4937 * Delivers a request to the X server.
4938 *
4939 */
4940 xcb_void_cookie_t
4941 xcb_input_select_extension_event (xcb_connection_t *c,
4942 xcb_window_t window,
4943 uint16_t num_classes,
4944 const xcb_input_event_class_t *classes);
4945
4946 xcb_input_event_class_t *
4947 xcb_input_select_extension_event_classes (const xcb_input_select_extension_event_request_t *R);
4948
4949 int
4950 xcb_input_select_extension_event_classes_length (const xcb_input_select_extension_event_request_t *R);
4951
4952 xcb_generic_iterator_t
4953 xcb_input_select_extension_event_classes_end (const xcb_input_select_extension_event_request_t *R);
4954
4955 int
4956 xcb_input_get_selected_extension_events_sizeof (const void *_buffer);
4957
4958 /**
4959 *
4960 * @param c The connection
4961 * @return A cookie
4962 *
4963 * Delivers a request to the X server.
4964 *
4965 */
4966 xcb_input_get_selected_extension_events_cookie_t
4967 xcb_input_get_selected_extension_events (xcb_connection_t *c,
4968 xcb_window_t window);
4969
4970 /**
4971 *
4972 * @param c The connection
4973 * @return A cookie
4974 *
4975 * Delivers a request to the X server.
4976 *
4977 * This form can be used only if the request will cause
4978 * a reply to be generated. Any returned error will be
4979 * placed in the event queue.
4980 */
4981 xcb_input_get_selected_extension_events_cookie_t
4982 xcb_input_get_selected_extension_events_unchecked (xcb_connection_t *c,
4983 xcb_window_t window);
4984
4985 xcb_input_event_class_t *
4986 xcb_input_get_selected_extension_events_this_classes (const xcb_input_get_selected_extension_events_reply_t *R);
4987
4988 int
4989 xcb_input_get_selected_extension_events_this_classes_length (const xcb_input_get_selected_extension_events_reply_t *R);
4990
4991 xcb_generic_iterator_t
4992 xcb_input_get_selected_extension_events_this_classes_end (const xcb_input_get_selected_extension_events_reply_t *R);
4993
4994 xcb_input_event_class_t *
4995 xcb_input_get_selected_extension_events_all_classes (const xcb_input_get_selected_extension_events_reply_t *R);
4996
4997 int
4998 xcb_input_get_selected_extension_events_all_classes_length (const xcb_input_get_selected_extension_events_reply_t *R);
4999
5000 xcb_generic_iterator_t
5001 xcb_input_get_selected_extension_events_all_classes_end (const xcb_input_get_selected_extension_events_reply_t *R);
5002
5003 /**
5004 * Return the reply
5005 * @param c The connection
5006 * @param cookie The cookie
5007 * @param e The xcb_generic_error_t supplied
5008 *
5009 * Returns the reply of the request asked by
5010 *
5011 * The parameter @p e supplied to this function must be NULL if
5012 * xcb_input_get_selected_extension_events_unchecked(). is used.
5013 * Otherwise, it stores the error if any.
5014 *
5015 * The returned value must be freed by the caller using free().
5016 */
5017 xcb_input_get_selected_extension_events_reply_t *
5018 xcb_input_get_selected_extension_events_reply (xcb_connection_t *c,
5019 xcb_input_get_selected_extension_events_cookie_t cookie /**< */,
5020 xcb_generic_error_t **e);
5021
5022 int
5023 xcb_input_change_device_dont_propagate_list_sizeof (const void *_buffer);
5024
5025 /**
5026 *
5027 * @param c The connection
5028 * @return A cookie
5029 *
5030 * Delivers a request to the X server.
5031 *
5032 * This form can be used only if the request will not cause
5033 * a reply to be generated. Any returned error will be
5034 * saved for handling by xcb_request_check().
5035 */
5036 xcb_void_cookie_t
5037 xcb_input_change_device_dont_propagate_list_checked (xcb_connection_t *c,
5038 xcb_window_t window,
5039 uint16_t num_classes,
5040 uint8_t mode,
5041 const xcb_input_event_class_t *classes);
5042
5043 /**
5044 *
5045 * @param c The connection
5046 * @return A cookie
5047 *
5048 * Delivers a request to the X server.
5049 *
5050 */
5051 xcb_void_cookie_t
5052 xcb_input_change_device_dont_propagate_list (xcb_connection_t *c,
5053 xcb_window_t window,
5054 uint16_t num_classes,
5055 uint8_t mode,
5056 const xcb_input_event_class_t *classes);
5057
5058 xcb_input_event_class_t *
5059 xcb_input_change_device_dont_propagate_list_classes (const xcb_input_change_device_dont_propagate_list_request_t *R);
5060
5061 int
5062 xcb_input_change_device_dont_propagate_list_classes_length (const xcb_input_change_device_dont_propagate_list_request_t *R);
5063
5064 xcb_generic_iterator_t
5065 xcb_input_change_device_dont_propagate_list_classes_end (const xcb_input_change_device_dont_propagate_list_request_t *R);
5066
5067 int
5068 xcb_input_get_device_dont_propagate_list_sizeof (const void *_buffer);
5069
5070 /**
5071 *
5072 * @param c The connection
5073 * @return A cookie
5074 *
5075 * Delivers a request to the X server.
5076 *
5077 */
5078 xcb_input_get_device_dont_propagate_list_cookie_t
5079 xcb_input_get_device_dont_propagate_list (xcb_connection_t *c,
5080 xcb_window_t window);
5081
5082 /**
5083 *
5084 * @param c The connection
5085 * @return A cookie
5086 *
5087 * Delivers a request to the X server.
5088 *
5089 * This form can be used only if the request will cause
5090 * a reply to be generated. Any returned error will be
5091 * placed in the event queue.
5092 */
5093 xcb_input_get_device_dont_propagate_list_cookie_t
5094 xcb_input_get_device_dont_propagate_list_unchecked (xcb_connection_t *c,
5095 xcb_window_t window);
5096
5097 xcb_input_event_class_t *
5098 xcb_input_get_device_dont_propagate_list_classes (const xcb_input_get_device_dont_propagate_list_reply_t *R);
5099
5100 int
5101 xcb_input_get_device_dont_propagate_list_classes_length (const xcb_input_get_device_dont_propagate_list_reply_t *R);
5102
5103 xcb_generic_iterator_t
5104 xcb_input_get_device_dont_propagate_list_classes_end (const xcb_input_get_device_dont_propagate_list_reply_t *R);
5105
5106 /**
5107 * Return the reply
5108 * @param c The connection
5109 * @param cookie The cookie
5110 * @param e The xcb_generic_error_t supplied
5111 *
5112 * Returns the reply of the request asked by
5113 *
5114 * The parameter @p e supplied to this function must be NULL if
5115 * xcb_input_get_device_dont_propagate_list_unchecked(). is used.
5116 * Otherwise, it stores the error if any.
5117 *
5118 * The returned value must be freed by the caller using free().
5119 */
5120 xcb_input_get_device_dont_propagate_list_reply_t *
5121 xcb_input_get_device_dont_propagate_list_reply (xcb_connection_t *c,
5122 xcb_input_get_device_dont_propagate_list_cookie_t cookie /**< */,
5123 xcb_generic_error_t **e);
5124
5125 int
5126 xcb_input_device_time_coord_sizeof (const void *_buffer,
5127 uint8_t num_axes);
5128
5129 int32_t *
5130 xcb_input_device_time_coord_axisvalues (const xcb_input_device_time_coord_t *R);
5131
5132 int
5133 xcb_input_device_time_coord_axisvalues_length (const xcb_input_device_time_coord_t *R,
5134 uint8_t num_axes);
5135
5136 xcb_generic_iterator_t
5137 xcb_input_device_time_coord_axisvalues_end (const xcb_input_device_time_coord_t *R,
5138 uint8_t num_axes);
5139
5140 /**
5141 * Get the next element of the iterator
5142 * @param i Pointer to a xcb_input_device_time_coord_iterator_t
5143 *
5144 * Get the next element in the iterator. The member rem is
5145 * decreased by one. The member data points to the next
5146 * element. The member index is increased by sizeof(xcb_input_device_time_coord_t)
5147 */
5148 void
5149 xcb_input_device_time_coord_next (xcb_input_device_time_coord_iterator_t *i);
5150
5151 /**
5152 * Return the iterator pointing to the last element
5153 * @param i An xcb_input_device_time_coord_iterator_t
5154 * @return The iterator pointing to the last element
5155 *
5156 * Set the current element in the iterator to the last element.
5157 * The member rem is set to 0. The member data points to the
5158 * last element.
5159 */
5160 xcb_generic_iterator_t
5161 xcb_input_device_time_coord_end (xcb_input_device_time_coord_iterator_t i);
5162
5163 int
5164 xcb_input_get_device_motion_events_sizeof (const void *_buffer);
5165
5166 /**
5167 *
5168 * @param c The connection
5169 * @return A cookie
5170 *
5171 * Delivers a request to the X server.
5172 *
5173 */
5174 xcb_input_get_device_motion_events_cookie_t
5175 xcb_input_get_device_motion_events (xcb_connection_t *c,
5176 xcb_timestamp_t start,
5177 xcb_timestamp_t stop,
5178 uint8_t device_id);
5179
5180 /**
5181 *
5182 * @param c The connection
5183 * @return A cookie
5184 *
5185 * Delivers a request to the X server.
5186 *
5187 * This form can be used only if the request will cause
5188 * a reply to be generated. Any returned error will be
5189 * placed in the event queue.
5190 */
5191 xcb_input_get_device_motion_events_cookie_t
5192 xcb_input_get_device_motion_events_unchecked (xcb_connection_t *c,
5193 xcb_timestamp_t start,
5194 xcb_timestamp_t stop,
5195 uint8_t device_id);
5196
5197 int
5198 xcb_input_get_device_motion_events_events_length (const xcb_input_get_device_motion_events_reply_t *R);
5199
5200 xcb_input_device_time_coord_iterator_t
5201 xcb_input_get_device_motion_events_events_iterator (const xcb_input_get_device_motion_events_reply_t *R);
5202
5203 /**
5204 * Return the reply
5205 * @param c The connection
5206 * @param cookie The cookie
5207 * @param e The xcb_generic_error_t supplied
5208 *
5209 * Returns the reply of the request asked by
5210 *
5211 * The parameter @p e supplied to this function must be NULL if
5212 * xcb_input_get_device_motion_events_unchecked(). is used.
5213 * Otherwise, it stores the error if any.
5214 *
5215 * The returned value must be freed by the caller using free().
5216 */
5217 xcb_input_get_device_motion_events_reply_t *
5218 xcb_input_get_device_motion_events_reply (xcb_connection_t *c,
5219 xcb_input_get_device_motion_events_cookie_t cookie /**< */,
5220 xcb_generic_error_t **e);
5221
5222 /**
5223 *
5224 * @param c The connection
5225 * @return A cookie
5226 *
5227 * Delivers a request to the X server.
5228 *
5229 */
5230 xcb_input_change_keyboard_device_cookie_t
5231 xcb_input_change_keyboard_device (xcb_connection_t *c,
5232 uint8_t device_id);
5233
5234 /**
5235 *
5236 * @param c The connection
5237 * @return A cookie
5238 *
5239 * Delivers a request to the X server.
5240 *
5241 * This form can be used only if the request will cause
5242 * a reply to be generated. Any returned error will be
5243 * placed in the event queue.
5244 */
5245 xcb_input_change_keyboard_device_cookie_t
5246 xcb_input_change_keyboard_device_unchecked (xcb_connection_t *c,
5247 uint8_t device_id);
5248
5249 /**
5250 * Return the reply
5251 * @param c The connection
5252 * @param cookie The cookie
5253 * @param e The xcb_generic_error_t supplied
5254 *
5255 * Returns the reply of the request asked by
5256 *
5257 * The parameter @p e supplied to this function must be NULL if
5258 * xcb_input_change_keyboard_device_unchecked(). is used.
5259 * Otherwise, it stores the error if any.
5260 *
5261 * The returned value must be freed by the caller using free().
5262 */
5263 xcb_input_change_keyboard_device_reply_t *
5264 xcb_input_change_keyboard_device_reply (xcb_connection_t *c,
5265 xcb_input_change_keyboard_device_cookie_t cookie /**< */,
5266 xcb_generic_error_t **e);
5267
5268 /**
5269 *
5270 * @param c The connection
5271 * @return A cookie
5272 *
5273 * Delivers a request to the X server.
5274 *
5275 */
5276 xcb_input_change_pointer_device_cookie_t
5277 xcb_input_change_pointer_device (xcb_connection_t *c,
5278 uint8_t x_axis,
5279 uint8_t y_axis,
5280 uint8_t device_id);
5281
5282 /**
5283 *
5284 * @param c The connection
5285 * @return A cookie
5286 *
5287 * Delivers a request to the X server.
5288 *
5289 * This form can be used only if the request will cause
5290 * a reply to be generated. Any returned error will be
5291 * placed in the event queue.
5292 */
5293 xcb_input_change_pointer_device_cookie_t
5294 xcb_input_change_pointer_device_unchecked (xcb_connection_t *c,
5295 uint8_t x_axis,
5296 uint8_t y_axis,
5297 uint8_t device_id);
5298
5299 /**
5300 * Return the reply
5301 * @param c The connection
5302 * @param cookie The cookie
5303 * @param e The xcb_generic_error_t supplied
5304 *
5305 * Returns the reply of the request asked by
5306 *
5307 * The parameter @p e supplied to this function must be NULL if
5308 * xcb_input_change_pointer_device_unchecked(). is used.
5309 * Otherwise, it stores the error if any.
5310 *
5311 * The returned value must be freed by the caller using free().
5312 */
5313 xcb_input_change_pointer_device_reply_t *
5314 xcb_input_change_pointer_device_reply (xcb_connection_t *c,
5315 xcb_input_change_pointer_device_cookie_t cookie /**< */,
5316 xcb_generic_error_t **e);
5317
5318 int
5319 xcb_input_grab_device_sizeof (const void *_buffer);
5320
5321 /**
5322 *
5323 * @param c The connection
5324 * @return A cookie
5325 *
5326 * Delivers a request to the X server.
5327 *
5328 */
5329 xcb_input_grab_device_cookie_t
5330 xcb_input_grab_device (xcb_connection_t *c,
5331 xcb_window_t grab_window,
5332 xcb_timestamp_t time,
5333 uint16_t num_classes,
5334 uint8_t this_device_mode,
5335 uint8_t other_device_mode,
5336 uint8_t owner_events,
5337 uint8_t device_id,
5338 const xcb_input_event_class_t *classes);
5339
5340 /**
5341 *
5342 * @param c The connection
5343 * @return A cookie
5344 *
5345 * Delivers a request to the X server.
5346 *
5347 * This form can be used only if the request will cause
5348 * a reply to be generated. Any returned error will be
5349 * placed in the event queue.
5350 */
5351 xcb_input_grab_device_cookie_t
5352 xcb_input_grab_device_unchecked (xcb_connection_t *c,
5353 xcb_window_t grab_window,
5354 xcb_timestamp_t time,
5355 uint16_t num_classes,
5356 uint8_t this_device_mode,
5357 uint8_t other_device_mode,
5358 uint8_t owner_events,
5359 uint8_t device_id,
5360 const xcb_input_event_class_t *classes);
5361
5362 /**
5363 * Return the reply
5364 * @param c The connection
5365 * @param cookie The cookie
5366 * @param e The xcb_generic_error_t supplied
5367 *
5368 * Returns the reply of the request asked by
5369 *
5370 * The parameter @p e supplied to this function must be NULL if
5371 * xcb_input_grab_device_unchecked(). is used.
5372 * Otherwise, it stores the error if any.
5373 *
5374 * The returned value must be freed by the caller using free().
5375 */
5376 xcb_input_grab_device_reply_t *
5377 xcb_input_grab_device_reply (xcb_connection_t *c,
5378 xcb_input_grab_device_cookie_t cookie /**< */,
5379 xcb_generic_error_t **e);
5380
5381 /**
5382 *
5383 * @param c The connection
5384 * @return A cookie
5385 *
5386 * Delivers a request to the X server.
5387 *
5388 * This form can be used only if the request will not cause
5389 * a reply to be generated. Any returned error will be
5390 * saved for handling by xcb_request_check().
5391 */
5392 xcb_void_cookie_t
5393 xcb_input_ungrab_device_checked (xcb_connection_t *c,
5394 xcb_timestamp_t time,
5395 uint8_t device_id);
5396
5397 /**
5398 *
5399 * @param c The connection
5400 * @return A cookie
5401 *
5402 * Delivers a request to the X server.
5403 *
5404 */
5405 xcb_void_cookie_t
5406 xcb_input_ungrab_device (xcb_connection_t *c,
5407 xcb_timestamp_t time,
5408 uint8_t device_id);
5409
5410 int
5411 xcb_input_grab_device_key_sizeof (const void *_buffer);
5412
5413 /**
5414 *
5415 * @param c The connection
5416 * @return A cookie
5417 *
5418 * Delivers a request to the X server.
5419 *
5420 * This form can be used only if the request will not cause
5421 * a reply to be generated. Any returned error will be
5422 * saved for handling by xcb_request_check().
5423 */
5424 xcb_void_cookie_t
5425 xcb_input_grab_device_key_checked (xcb_connection_t *c,
5426 xcb_window_t grab_window,
5427 uint16_t num_classes,
5428 uint16_t modifiers,
5429 uint8_t modifier_device,
5430 uint8_t grabbed_device,
5431 uint8_t key,
5432 uint8_t this_device_mode,
5433 uint8_t other_device_mode,
5434 uint8_t owner_events,
5435 const xcb_input_event_class_t *classes);
5436
5437 /**
5438 *
5439 * @param c The connection
5440 * @return A cookie
5441 *
5442 * Delivers a request to the X server.
5443 *
5444 */
5445 xcb_void_cookie_t
5446 xcb_input_grab_device_key (xcb_connection_t *c,
5447 xcb_window_t grab_window,
5448 uint16_t num_classes,
5449 uint16_t modifiers,
5450 uint8_t modifier_device,
5451 uint8_t grabbed_device,
5452 uint8_t key,
5453 uint8_t this_device_mode,
5454 uint8_t other_device_mode,
5455 uint8_t owner_events,
5456 const xcb_input_event_class_t *classes);
5457
5458 xcb_input_event_class_t *
5459 xcb_input_grab_device_key_classes (const xcb_input_grab_device_key_request_t *R);
5460
5461 int
5462 xcb_input_grab_device_key_classes_length (const xcb_input_grab_device_key_request_t *R);
5463
5464 xcb_generic_iterator_t
5465 xcb_input_grab_device_key_classes_end (const xcb_input_grab_device_key_request_t *R);
5466
5467 /**
5468 *
5469 * @param c The connection
5470 * @return A cookie
5471 *
5472 * Delivers a request to the X server.
5473 *
5474 * This form can be used only if the request will not cause
5475 * a reply to be generated. Any returned error will be
5476 * saved for handling by xcb_request_check().
5477 */
5478 xcb_void_cookie_t
5479 xcb_input_ungrab_device_key_checked (xcb_connection_t *c,
5480 xcb_window_t grabWindow,
5481 uint16_t modifiers,
5482 uint8_t modifier_device,
5483 uint8_t key,
5484 uint8_t grabbed_device);
5485
5486 /**
5487 *
5488 * @param c The connection
5489 * @return A cookie
5490 *
5491 * Delivers a request to the X server.
5492 *
5493 */
5494 xcb_void_cookie_t
5495 xcb_input_ungrab_device_key (xcb_connection_t *c,
5496 xcb_window_t grabWindow,
5497 uint16_t modifiers,
5498 uint8_t modifier_device,
5499 uint8_t key,
5500 uint8_t grabbed_device);
5501
5502 int
5503 xcb_input_grab_device_button_sizeof (const void *_buffer);
5504
5505 /**
5506 *
5507 * @param c The connection
5508 * @return A cookie
5509 *
5510 * Delivers a request to the X server.
5511 *
5512 * This form can be used only if the request will not cause
5513 * a reply to be generated. Any returned error will be
5514 * saved for handling by xcb_request_check().
5515 */
5516 xcb_void_cookie_t
5517 xcb_input_grab_device_button_checked (xcb_connection_t *c,
5518 xcb_window_t grab_window,
5519 uint8_t grabbed_device,
5520 uint8_t modifier_device,
5521 uint16_t num_classes,
5522 uint16_t modifiers,
5523 uint8_t this_device_mode,
5524 uint8_t other_device_mode,
5525 uint8_t button,
5526 uint8_t owner_events,
5527 const xcb_input_event_class_t *classes);
5528
5529 /**
5530 *
5531 * @param c The connection
5532 * @return A cookie
5533 *
5534 * Delivers a request to the X server.
5535 *
5536 */
5537 xcb_void_cookie_t
5538 xcb_input_grab_device_button (xcb_connection_t *c,
5539 xcb_window_t grab_window,
5540 uint8_t grabbed_device,
5541 uint8_t modifier_device,
5542 uint16_t num_classes,
5543 uint16_t modifiers,
5544 uint8_t this_device_mode,
5545 uint8_t other_device_mode,
5546 uint8_t button,
5547 uint8_t owner_events,
5548 const xcb_input_event_class_t *classes);
5549
5550 xcb_input_event_class_t *
5551 xcb_input_grab_device_button_classes (const xcb_input_grab_device_button_request_t *R);
5552
5553 int
5554 xcb_input_grab_device_button_classes_length (const xcb_input_grab_device_button_request_t *R);
5555
5556 xcb_generic_iterator_t
5557 xcb_input_grab_device_button_classes_end (const xcb_input_grab_device_button_request_t *R);
5558
5559 /**
5560 *
5561 * @param c The connection
5562 * @return A cookie
5563 *
5564 * Delivers a request to the X server.
5565 *
5566 * This form can be used only if the request will not cause
5567 * a reply to be generated. Any returned error will be
5568 * saved for handling by xcb_request_check().
5569 */
5570 xcb_void_cookie_t
5571 xcb_input_ungrab_device_button_checked (xcb_connection_t *c,
5572 xcb_window_t grab_window,
5573 uint16_t modifiers,
5574 uint8_t modifier_device,
5575 uint8_t button,
5576 uint8_t grabbed_device);
5577
5578 /**
5579 *
5580 * @param c The connection
5581 * @return A cookie
5582 *
5583 * Delivers a request to the X server.
5584 *
5585 */
5586 xcb_void_cookie_t
5587 xcb_input_ungrab_device_button (xcb_connection_t *c,
5588 xcb_window_t grab_window,
5589 uint16_t modifiers,
5590 uint8_t modifier_device,
5591 uint8_t button,
5592 uint8_t grabbed_device);
5593
5594 /**
5595 *
5596 * @param c The connection
5597 * @return A cookie
5598 *
5599 * Delivers a request to the X server.
5600 *
5601 * This form can be used only if the request will not cause
5602 * a reply to be generated. Any returned error will be
5603 * saved for handling by xcb_request_check().
5604 */
5605 xcb_void_cookie_t
5606 xcb_input_allow_device_events_checked (xcb_connection_t *c,
5607 xcb_timestamp_t time,
5608 uint8_t mode,
5609 uint8_t device_id);
5610
5611 /**
5612 *
5613 * @param c The connection
5614 * @return A cookie
5615 *
5616 * Delivers a request to the X server.
5617 *
5618 */
5619 xcb_void_cookie_t
5620 xcb_input_allow_device_events (xcb_connection_t *c,
5621 xcb_timestamp_t time,
5622 uint8_t mode,
5623 uint8_t device_id);
5624
5625 /**
5626 *
5627 * @param c The connection
5628 * @return A cookie
5629 *
5630 * Delivers a request to the X server.
5631 *
5632 */
5633 xcb_input_get_device_focus_cookie_t
5634 xcb_input_get_device_focus (xcb_connection_t *c,
5635 uint8_t device_id);
5636
5637 /**
5638 *
5639 * @param c The connection
5640 * @return A cookie
5641 *
5642 * Delivers a request to the X server.
5643 *
5644 * This form can be used only if the request will cause
5645 * a reply to be generated. Any returned error will be
5646 * placed in the event queue.
5647 */
5648 xcb_input_get_device_focus_cookie_t
5649 xcb_input_get_device_focus_unchecked (xcb_connection_t *c,
5650 uint8_t device_id);
5651
5652 /**
5653 * Return the reply
5654 * @param c The connection
5655 * @param cookie The cookie
5656 * @param e The xcb_generic_error_t supplied
5657 *
5658 * Returns the reply of the request asked by
5659 *
5660 * The parameter @p e supplied to this function must be NULL if
5661 * xcb_input_get_device_focus_unchecked(). is used.
5662 * Otherwise, it stores the error if any.
5663 *
5664 * The returned value must be freed by the caller using free().
5665 */
5666 xcb_input_get_device_focus_reply_t *
5667 xcb_input_get_device_focus_reply (xcb_connection_t *c,
5668 xcb_input_get_device_focus_cookie_t cookie /**< */,
5669 xcb_generic_error_t **e);
5670
5671 /**
5672 *
5673 * @param c The connection
5674 * @return A cookie
5675 *
5676 * Delivers a request to the X server.
5677 *
5678 * This form can be used only if the request will not cause
5679 * a reply to be generated. Any returned error will be
5680 * saved for handling by xcb_request_check().
5681 */
5682 xcb_void_cookie_t
5683 xcb_input_set_device_focus_checked (xcb_connection_t *c,
5684 xcb_window_t focus,
5685 xcb_timestamp_t time,
5686 uint8_t revert_to,
5687 uint8_t device_id);
5688
5689 /**
5690 *
5691 * @param c The connection
5692 * @return A cookie
5693 *
5694 * Delivers a request to the X server.
5695 *
5696 */
5697 xcb_void_cookie_t
5698 xcb_input_set_device_focus (xcb_connection_t *c,
5699 xcb_window_t focus,
5700 xcb_timestamp_t time,
5701 uint8_t revert_to,
5702 uint8_t device_id);
5703
5704 /**
5705 * Get the next element of the iterator
5706 * @param i Pointer to a xcb_input_kbd_feedback_state_iterator_t
5707 *
5708 * Get the next element in the iterator. The member rem is
5709 * decreased by one. The member data points to the next
5710 * element. The member index is increased by sizeof(xcb_input_kbd_feedback_state_t)
5711 */
5712 void
5713 xcb_input_kbd_feedback_state_next (xcb_input_kbd_feedback_state_iterator_t *i);
5714
5715 /**
5716 * Return the iterator pointing to the last element
5717 * @param i An xcb_input_kbd_feedback_state_iterator_t
5718 * @return The iterator pointing to the last element
5719 *
5720 * Set the current element in the iterator to the last element.
5721 * The member rem is set to 0. The member data points to the
5722 * last element.
5723 */
5724 xcb_generic_iterator_t
5725 xcb_input_kbd_feedback_state_end (xcb_input_kbd_feedback_state_iterator_t i);
5726
5727 /**
5728 * Get the next element of the iterator
5729 * @param i Pointer to a xcb_input_ptr_feedback_state_iterator_t
5730 *
5731 * Get the next element in the iterator. The member rem is
5732 * decreased by one. The member data points to the next
5733 * element. The member index is increased by sizeof(xcb_input_ptr_feedback_state_t)
5734 */
5735 void
5736 xcb_input_ptr_feedback_state_next (xcb_input_ptr_feedback_state_iterator_t *i);
5737
5738 /**
5739 * Return the iterator pointing to the last element
5740 * @param i An xcb_input_ptr_feedback_state_iterator_t
5741 * @return The iterator pointing to the last element
5742 *
5743 * Set the current element in the iterator to the last element.
5744 * The member rem is set to 0. The member data points to the
5745 * last element.
5746 */
5747 xcb_generic_iterator_t
5748 xcb_input_ptr_feedback_state_end (xcb_input_ptr_feedback_state_iterator_t i);
5749
5750 /**
5751 * Get the next element of the iterator
5752 * @param i Pointer to a xcb_input_integer_feedback_state_iterator_t
5753 *
5754 * Get the next element in the iterator. The member rem is
5755 * decreased by one. The member data points to the next
5756 * element. The member index is increased by sizeof(xcb_input_integer_feedback_state_t)
5757 */
5758 void
5759 xcb_input_integer_feedback_state_next (xcb_input_integer_feedback_state_iterator_t *i);
5760
5761 /**
5762 * Return the iterator pointing to the last element
5763 * @param i An xcb_input_integer_feedback_state_iterator_t
5764 * @return The iterator pointing to the last element
5765 *
5766 * Set the current element in the iterator to the last element.
5767 * The member rem is set to 0. The member data points to the
5768 * last element.
5769 */
5770 xcb_generic_iterator_t
5771 xcb_input_integer_feedback_state_end (xcb_input_integer_feedback_state_iterator_t i);
5772
5773 int
5774 xcb_input_string_feedback_state_sizeof (const void *_buffer);
5775
5776 xcb_keysym_t *
5777 xcb_input_string_feedback_state_keysyms (const xcb_input_string_feedback_state_t *R);
5778
5779 int
5780 xcb_input_string_feedback_state_keysyms_length (const xcb_input_string_feedback_state_t *R);
5781
5782 xcb_generic_iterator_t
5783 xcb_input_string_feedback_state_keysyms_end (const xcb_input_string_feedback_state_t *R);
5784
5785 /**
5786 * Get the next element of the iterator
5787 * @param i Pointer to a xcb_input_string_feedback_state_iterator_t
5788 *
5789 * Get the next element in the iterator. The member rem is
5790 * decreased by one. The member data points to the next
5791 * element. The member index is increased by sizeof(xcb_input_string_feedback_state_t)
5792 */
5793 void
5794 xcb_input_string_feedback_state_next (xcb_input_string_feedback_state_iterator_t *i);
5795
5796 /**
5797 * Return the iterator pointing to the last element
5798 * @param i An xcb_input_string_feedback_state_iterator_t
5799 * @return The iterator pointing to the last element
5800 *
5801 * Set the current element in the iterator to the last element.
5802 * The member rem is set to 0. The member data points to the
5803 * last element.
5804 */
5805 xcb_generic_iterator_t
5806 xcb_input_string_feedback_state_end (xcb_input_string_feedback_state_iterator_t i);
5807
5808 /**
5809 * Get the next element of the iterator
5810 * @param i Pointer to a xcb_input_bell_feedback_state_iterator_t
5811 *
5812 * Get the next element in the iterator. The member rem is
5813 * decreased by one. The member data points to the next
5814 * element. The member index is increased by sizeof(xcb_input_bell_feedback_state_t)
5815 */
5816 void
5817 xcb_input_bell_feedback_state_next (xcb_input_bell_feedback_state_iterator_t *i);
5818
5819 /**
5820 * Return the iterator pointing to the last element
5821 * @param i An xcb_input_bell_feedback_state_iterator_t
5822 * @return The iterator pointing to the last element
5823 *
5824 * Set the current element in the iterator to the last element.
5825 * The member rem is set to 0. The member data points to the
5826 * last element.
5827 */
5828 xcb_generic_iterator_t
5829 xcb_input_bell_feedback_state_end (xcb_input_bell_feedback_state_iterator_t i);
5830
5831 /**
5832 * Get the next element of the iterator
5833 * @param i Pointer to a xcb_input_led_feedback_state_iterator_t
5834 *
5835 * Get the next element in the iterator. The member rem is
5836 * decreased by one. The member data points to the next
5837 * element. The member index is increased by sizeof(xcb_input_led_feedback_state_t)
5838 */
5839 void
5840 xcb_input_led_feedback_state_next (xcb_input_led_feedback_state_iterator_t *i);
5841
5842 /**
5843 * Return the iterator pointing to the last element
5844 * @param i An xcb_input_led_feedback_state_iterator_t
5845 * @return The iterator pointing to the last element
5846 *
5847 * Set the current element in the iterator to the last element.
5848 * The member rem is set to 0. The member data points to the
5849 * last element.
5850 */
5851 xcb_generic_iterator_t
5852 xcb_input_led_feedback_state_end (xcb_input_led_feedback_state_iterator_t i);
5853
5854 xcb_keysym_t *
5855 xcb_input_feedback_state_data_string_keysyms (const xcb_input_feedback_state_data_t *S);
5856
5857 int
5858 xcb_input_feedback_state_data_string_keysyms_length (const xcb_input_feedback_state_t *R,
5859 const xcb_input_feedback_state_data_t *S);
5860
5861 xcb_generic_iterator_t
5862 xcb_input_feedback_state_data_string_keysyms_end (const xcb_input_feedback_state_t *R,
5863 const xcb_input_feedback_state_data_t *S);
5864
5865 int
5866 xcb_input_feedback_state_data_serialize (void **_buffer,
5867 uint8_t class_id,
5868 const xcb_input_feedback_state_data_t *_aux);
5869
5870 int
5871 xcb_input_feedback_state_data_unpack (const void *_buffer,
5872 uint8_t class_id,
5873 xcb_input_feedback_state_data_t *_aux);
5874
5875 int
5876 xcb_input_feedback_state_data_sizeof (const void *_buffer,
5877 uint8_t class_id);
5878
5879 int
5880 xcb_input_feedback_state_sizeof (const void *_buffer);
5881
5882 /**
5883 * Get the next element of the iterator
5884 * @param i Pointer to a xcb_input_feedback_state_iterator_t
5885 *
5886 * Get the next element in the iterator. The member rem is
5887 * decreased by one. The member data points to the next
5888 * element. The member index is increased by sizeof(xcb_input_feedback_state_t)
5889 */
5890 void
5891 xcb_input_feedback_state_next (xcb_input_feedback_state_iterator_t *i);
5892
5893 /**
5894 * Return the iterator pointing to the last element
5895 * @param i An xcb_input_feedback_state_iterator_t
5896 * @return The iterator pointing to the last element
5897 *
5898 * Set the current element in the iterator to the last element.
5899 * The member rem is set to 0. The member data points to the
5900 * last element.
5901 */
5902 xcb_generic_iterator_t
5903 xcb_input_feedback_state_end (xcb_input_feedback_state_iterator_t i);
5904
5905 int
5906 xcb_input_get_feedback_control_sizeof (const void *_buffer);
5907
5908 /**
5909 *
5910 * @param c The connection
5911 * @return A cookie
5912 *
5913 * Delivers a request to the X server.
5914 *
5915 */
5916 xcb_input_get_feedback_control_cookie_t
5917 xcb_input_get_feedback_control (xcb_connection_t *c,
5918 uint8_t device_id);
5919
5920 /**
5921 *
5922 * @param c The connection
5923 * @return A cookie
5924 *
5925 * Delivers a request to the X server.
5926 *
5927 * This form can be used only if the request will cause
5928 * a reply to be generated. Any returned error will be
5929 * placed in the event queue.
5930 */
5931 xcb_input_get_feedback_control_cookie_t
5932 xcb_input_get_feedback_control_unchecked (xcb_connection_t *c,
5933 uint8_t device_id);
5934
5935 int
5936 xcb_input_get_feedback_control_feedbacks_length (const xcb_input_get_feedback_control_reply_t *R);
5937
5938 xcb_input_feedback_state_iterator_t
5939 xcb_input_get_feedback_control_feedbacks_iterator (const xcb_input_get_feedback_control_reply_t *R);
5940
5941 /**
5942 * Return the reply
5943 * @param c The connection
5944 * @param cookie The cookie
5945 * @param e The xcb_generic_error_t supplied
5946 *
5947 * Returns the reply of the request asked by
5948 *
5949 * The parameter @p e supplied to this function must be NULL if
5950 * xcb_input_get_feedback_control_unchecked(). is used.
5951 * Otherwise, it stores the error if any.
5952 *
5953 * The returned value must be freed by the caller using free().
5954 */
5955 xcb_input_get_feedback_control_reply_t *
5956 xcb_input_get_feedback_control_reply (xcb_connection_t *c,
5957 xcb_input_get_feedback_control_cookie_t cookie /**< */,
5958 xcb_generic_error_t **e);
5959
5960 /**
5961 * Get the next element of the iterator
5962 * @param i Pointer to a xcb_input_kbd_feedback_ctl_iterator_t
5963 *
5964 * Get the next element in the iterator. The member rem is
5965 * decreased by one. The member data points to the next
5966 * element. The member index is increased by sizeof(xcb_input_kbd_feedback_ctl_t)
5967 */
5968 void
5969 xcb_input_kbd_feedback_ctl_next (xcb_input_kbd_feedback_ctl_iterator_t *i);
5970
5971 /**
5972 * Return the iterator pointing to the last element
5973 * @param i An xcb_input_kbd_feedback_ctl_iterator_t
5974 * @return The iterator pointing to the last element
5975 *
5976 * Set the current element in the iterator to the last element.
5977 * The member rem is set to 0. The member data points to the
5978 * last element.
5979 */
5980 xcb_generic_iterator_t
5981 xcb_input_kbd_feedback_ctl_end (xcb_input_kbd_feedback_ctl_iterator_t i);
5982
5983 /**
5984 * Get the next element of the iterator
5985 * @param i Pointer to a xcb_input_ptr_feedback_ctl_iterator_t
5986 *
5987 * Get the next element in the iterator. The member rem is
5988 * decreased by one. The member data points to the next
5989 * element. The member index is increased by sizeof(xcb_input_ptr_feedback_ctl_t)
5990 */
5991 void
5992 xcb_input_ptr_feedback_ctl_next (xcb_input_ptr_feedback_ctl_iterator_t *i);
5993
5994 /**
5995 * Return the iterator pointing to the last element
5996 * @param i An xcb_input_ptr_feedback_ctl_iterator_t
5997 * @return The iterator pointing to the last element
5998 *
5999 * Set the current element in the iterator to the last element.
6000 * The member rem is set to 0. The member data points to the
6001 * last element.
6002 */
6003 xcb_generic_iterator_t
6004 xcb_input_ptr_feedback_ctl_end (xcb_input_ptr_feedback_ctl_iterator_t i);
6005
6006 /**
6007 * Get the next element of the iterator
6008 * @param i Pointer to a xcb_input_integer_feedback_ctl_iterator_t
6009 *
6010 * Get the next element in the iterator. The member rem is
6011 * decreased by one. The member data points to the next
6012 * element. The member index is increased by sizeof(xcb_input_integer_feedback_ctl_t)
6013 */
6014 void
6015 xcb_input_integer_feedback_ctl_next (xcb_input_integer_feedback_ctl_iterator_t *i);
6016
6017 /**
6018 * Return the iterator pointing to the last element
6019 * @param i An xcb_input_integer_feedback_ctl_iterator_t
6020 * @return The iterator pointing to the last element
6021 *
6022 * Set the current element in the iterator to the last element.
6023 * The member rem is set to 0. The member data points to the
6024 * last element.
6025 */
6026 xcb_generic_iterator_t
6027 xcb_input_integer_feedback_ctl_end (xcb_input_integer_feedback_ctl_iterator_t i);
6028
6029 int
6030 xcb_input_string_feedback_ctl_sizeof (const void *_buffer);
6031
6032 xcb_keysym_t *
6033 xcb_input_string_feedback_ctl_keysyms (const xcb_input_string_feedback_ctl_t *R);
6034
6035 int
6036 xcb_input_string_feedback_ctl_keysyms_length (const xcb_input_string_feedback_ctl_t *R);
6037
6038 xcb_generic_iterator_t
6039 xcb_input_string_feedback_ctl_keysyms_end (const xcb_input_string_feedback_ctl_t *R);
6040
6041 /**
6042 * Get the next element of the iterator
6043 * @param i Pointer to a xcb_input_string_feedback_ctl_iterator_t
6044 *
6045 * Get the next element in the iterator. The member rem is
6046 * decreased by one. The member data points to the next
6047 * element. The member index is increased by sizeof(xcb_input_string_feedback_ctl_t)
6048 */
6049 void
6050 xcb_input_string_feedback_ctl_next (xcb_input_string_feedback_ctl_iterator_t *i);
6051
6052 /**
6053 * Return the iterator pointing to the last element
6054 * @param i An xcb_input_string_feedback_ctl_iterator_t
6055 * @return The iterator pointing to the last element
6056 *
6057 * Set the current element in the iterator to the last element.
6058 * The member rem is set to 0. The member data points to the
6059 * last element.
6060 */
6061 xcb_generic_iterator_t
6062 xcb_input_string_feedback_ctl_end (xcb_input_string_feedback_ctl_iterator_t i);
6063
6064 /**
6065 * Get the next element of the iterator
6066 * @param i Pointer to a xcb_input_bell_feedback_ctl_iterator_t
6067 *
6068 * Get the next element in the iterator. The member rem is
6069 * decreased by one. The member data points to the next
6070 * element. The member index is increased by sizeof(xcb_input_bell_feedback_ctl_t)
6071 */
6072 void
6073 xcb_input_bell_feedback_ctl_next (xcb_input_bell_feedback_ctl_iterator_t *i);
6074
6075 /**
6076 * Return the iterator pointing to the last element
6077 * @param i An xcb_input_bell_feedback_ctl_iterator_t
6078 * @return The iterator pointing to the last element
6079 *
6080 * Set the current element in the iterator to the last element.
6081 * The member rem is set to 0. The member data points to the
6082 * last element.
6083 */
6084 xcb_generic_iterator_t
6085 xcb_input_bell_feedback_ctl_end (xcb_input_bell_feedback_ctl_iterator_t i);
6086
6087 /**
6088 * Get the next element of the iterator
6089 * @param i Pointer to a xcb_input_led_feedback_ctl_iterator_t
6090 *
6091 * Get the next element in the iterator. The member rem is
6092 * decreased by one. The member data points to the next
6093 * element. The member index is increased by sizeof(xcb_input_led_feedback_ctl_t)
6094 */
6095 void
6096 xcb_input_led_feedback_ctl_next (xcb_input_led_feedback_ctl_iterator_t *i);
6097
6098 /**
6099 * Return the iterator pointing to the last element
6100 * @param i An xcb_input_led_feedback_ctl_iterator_t
6101 * @return The iterator pointing to the last element
6102 *
6103 * Set the current element in the iterator to the last element.
6104 * The member rem is set to 0. The member data points to the
6105 * last element.
6106 */
6107 xcb_generic_iterator_t
6108 xcb_input_led_feedback_ctl_end (xcb_input_led_feedback_ctl_iterator_t i);
6109
6110 xcb_keysym_t *
6111 xcb_input_feedback_ctl_data_string_keysyms (const xcb_input_feedback_ctl_data_t *S);
6112
6113 int
6114 xcb_input_feedback_ctl_data_string_keysyms_length (const xcb_input_feedback_ctl_t *R,
6115 const xcb_input_feedback_ctl_data_t *S);
6116
6117 xcb_generic_iterator_t
6118 xcb_input_feedback_ctl_data_string_keysyms_end (const xcb_input_feedback_ctl_t *R,
6119 const xcb_input_feedback_ctl_data_t *S);
6120
6121 int
6122 xcb_input_feedback_ctl_data_serialize (void **_buffer,
6123 uint8_t class_id,
6124 const xcb_input_feedback_ctl_data_t *_aux);
6125
6126 int
6127 xcb_input_feedback_ctl_data_unpack (const void *_buffer,
6128 uint8_t class_id,
6129 xcb_input_feedback_ctl_data_t *_aux);
6130
6131 int
6132 xcb_input_feedback_ctl_data_sizeof (const void *_buffer,
6133 uint8_t class_id);
6134
6135 int
6136 xcb_input_feedback_ctl_sizeof (const void *_buffer);
6137
6138 /**
6139 * Get the next element of the iterator
6140 * @param i Pointer to a xcb_input_feedback_ctl_iterator_t
6141 *
6142 * Get the next element in the iterator. The member rem is
6143 * decreased by one. The member data points to the next
6144 * element. The member index is increased by sizeof(xcb_input_feedback_ctl_t)
6145 */
6146 void
6147 xcb_input_feedback_ctl_next (xcb_input_feedback_ctl_iterator_t *i);
6148
6149 /**
6150 * Return the iterator pointing to the last element
6151 * @param i An xcb_input_feedback_ctl_iterator_t
6152 * @return The iterator pointing to the last element
6153 *
6154 * Set the current element in the iterator to the last element.
6155 * The member rem is set to 0. The member data points to the
6156 * last element.
6157 */
6158 xcb_generic_iterator_t
6159 xcb_input_feedback_ctl_end (xcb_input_feedback_ctl_iterator_t i);
6160
6161 int
6162 xcb_input_change_feedback_control_sizeof (const void *_buffer);
6163
6164 /**
6165 *
6166 * @param c The connection
6167 * @return A cookie
6168 *
6169 * Delivers a request to the X server.
6170 *
6171 * This form can be used only if the request will not cause
6172 * a reply to be generated. Any returned error will be
6173 * saved for handling by xcb_request_check().
6174 */
6175 xcb_void_cookie_t
6176 xcb_input_change_feedback_control_checked (xcb_connection_t *c,
6177 uint32_t mask,
6178 uint8_t device_id,
6179 uint8_t feedback_id,
6180 xcb_input_feedback_ctl_t *feedback);
6181
6182 /**
6183 *
6184 * @param c The connection
6185 * @return A cookie
6186 *
6187 * Delivers a request to the X server.
6188 *
6189 */
6190 xcb_void_cookie_t
6191 xcb_input_change_feedback_control (xcb_connection_t *c,
6192 uint32_t mask,
6193 uint8_t device_id,
6194 uint8_t feedback_id,
6195 xcb_input_feedback_ctl_t *feedback);
6196
6197 xcb_input_feedback_ctl_t *
6198 xcb_input_change_feedback_control_feedback (const xcb_input_change_feedback_control_request_t *R);
6199
6200 int
6201 xcb_input_get_device_key_mapping_sizeof (const void *_buffer);
6202
6203 /**
6204 *
6205 * @param c The connection
6206 * @return A cookie
6207 *
6208 * Delivers a request to the X server.
6209 *
6210 */
6211 xcb_input_get_device_key_mapping_cookie_t
6212 xcb_input_get_device_key_mapping (xcb_connection_t *c,
6213 uint8_t device_id,
6214 xcb_input_key_code_t first_keycode,
6215 uint8_t count);
6216
6217 /**
6218 *
6219 * @param c The connection
6220 * @return A cookie
6221 *
6222 * Delivers a request to the X server.
6223 *
6224 * This form can be used only if the request will cause
6225 * a reply to be generated. Any returned error will be
6226 * placed in the event queue.
6227 */
6228 xcb_input_get_device_key_mapping_cookie_t
6229 xcb_input_get_device_key_mapping_unchecked (xcb_connection_t *c,
6230 uint8_t device_id,
6231 xcb_input_key_code_t first_keycode,
6232 uint8_t count);
6233
6234 xcb_keysym_t *
6235 xcb_input_get_device_key_mapping_keysyms (const xcb_input_get_device_key_mapping_reply_t *R);
6236
6237 int
6238 xcb_input_get_device_key_mapping_keysyms_length (const xcb_input_get_device_key_mapping_reply_t *R);
6239
6240 xcb_generic_iterator_t
6241 xcb_input_get_device_key_mapping_keysyms_end (const xcb_input_get_device_key_mapping_reply_t *R);
6242
6243 /**
6244 * Return the reply
6245 * @param c The connection
6246 * @param cookie The cookie
6247 * @param e The xcb_generic_error_t supplied
6248 *
6249 * Returns the reply of the request asked by
6250 *
6251 * The parameter @p e supplied to this function must be NULL if
6252 * xcb_input_get_device_key_mapping_unchecked(). is used.
6253 * Otherwise, it stores the error if any.
6254 *
6255 * The returned value must be freed by the caller using free().
6256 */
6257 xcb_input_get_device_key_mapping_reply_t *
6258 xcb_input_get_device_key_mapping_reply (xcb_connection_t *c,
6259 xcb_input_get_device_key_mapping_cookie_t cookie /**< */,
6260 xcb_generic_error_t **e);
6261
6262 int
6263 xcb_input_change_device_key_mapping_sizeof (const void *_buffer);
6264
6265 /**
6266 *
6267 * @param c The connection
6268 * @return A cookie
6269 *
6270 * Delivers a request to the X server.
6271 *
6272 * This form can be used only if the request will not cause
6273 * a reply to be generated. Any returned error will be
6274 * saved for handling by xcb_request_check().
6275 */
6276 xcb_void_cookie_t
6277 xcb_input_change_device_key_mapping_checked (xcb_connection_t *c,
6278 uint8_t device_id,
6279 xcb_input_key_code_t first_keycode,
6280 uint8_t keysyms_per_keycode,
6281 uint8_t keycode_count,
6282 const xcb_keysym_t *keysyms);
6283
6284 /**
6285 *
6286 * @param c The connection
6287 * @return A cookie
6288 *
6289 * Delivers a request to the X server.
6290 *
6291 */
6292 xcb_void_cookie_t
6293 xcb_input_change_device_key_mapping (xcb_connection_t *c,
6294 uint8_t device_id,
6295 xcb_input_key_code_t first_keycode,
6296 uint8_t keysyms_per_keycode,
6297 uint8_t keycode_count,
6298 const xcb_keysym_t *keysyms);
6299
6300 xcb_keysym_t *
6301 xcb_input_change_device_key_mapping_keysyms (const xcb_input_change_device_key_mapping_request_t *R);
6302
6303 int
6304 xcb_input_change_device_key_mapping_keysyms_length (const xcb_input_change_device_key_mapping_request_t *R);
6305
6306 xcb_generic_iterator_t
6307 xcb_input_change_device_key_mapping_keysyms_end (const xcb_input_change_device_key_mapping_request_t *R);
6308
6309 int
6310 xcb_input_get_device_modifier_mapping_sizeof (const void *_buffer);
6311
6312 /**
6313 *
6314 * @param c The connection
6315 * @return A cookie
6316 *
6317 * Delivers a request to the X server.
6318 *
6319 */
6320 xcb_input_get_device_modifier_mapping_cookie_t
6321 xcb_input_get_device_modifier_mapping (xcb_connection_t *c,
6322 uint8_t device_id);
6323
6324 /**
6325 *
6326 * @param c The connection
6327 * @return A cookie
6328 *
6329 * Delivers a request to the X server.
6330 *
6331 * This form can be used only if the request will cause
6332 * a reply to be generated. Any returned error will be
6333 * placed in the event queue.
6334 */
6335 xcb_input_get_device_modifier_mapping_cookie_t
6336 xcb_input_get_device_modifier_mapping_unchecked (xcb_connection_t *c,
6337 uint8_t device_id);
6338
6339 uint8_t *
6340 xcb_input_get_device_modifier_mapping_keymaps (const xcb_input_get_device_modifier_mapping_reply_t *R);
6341
6342 int
6343 xcb_input_get_device_modifier_mapping_keymaps_length (const xcb_input_get_device_modifier_mapping_reply_t *R);
6344
6345 xcb_generic_iterator_t
6346 xcb_input_get_device_modifier_mapping_keymaps_end (const xcb_input_get_device_modifier_mapping_reply_t *R);
6347
6348 /**
6349 * Return the reply
6350 * @param c The connection
6351 * @param cookie The cookie
6352 * @param e The xcb_generic_error_t supplied
6353 *
6354 * Returns the reply of the request asked by
6355 *
6356 * The parameter @p e supplied to this function must be NULL if
6357 * xcb_input_get_device_modifier_mapping_unchecked(). is used.
6358 * Otherwise, it stores the error if any.
6359 *
6360 * The returned value must be freed by the caller using free().
6361 */
6362 xcb_input_get_device_modifier_mapping_reply_t *
6363 xcb_input_get_device_modifier_mapping_reply (xcb_connection_t *c,
6364 xcb_input_get_device_modifier_mapping_cookie_t cookie /**< */,
6365 xcb_generic_error_t **e);
6366
6367 int
6368 xcb_input_set_device_modifier_mapping_sizeof (const void *_buffer);
6369
6370 /**
6371 *
6372 * @param c The connection
6373 * @return A cookie
6374 *
6375 * Delivers a request to the X server.
6376 *
6377 */
6378 xcb_input_set_device_modifier_mapping_cookie_t
6379 xcb_input_set_device_modifier_mapping (xcb_connection_t *c,
6380 uint8_t device_id,
6381 uint8_t keycodes_per_modifier,
6382 const uint8_t *keymaps);
6383
6384 /**
6385 *
6386 * @param c The connection
6387 * @return A cookie
6388 *
6389 * Delivers a request to the X server.
6390 *
6391 * This form can be used only if the request will cause
6392 * a reply to be generated. Any returned error will be
6393 * placed in the event queue.
6394 */
6395 xcb_input_set_device_modifier_mapping_cookie_t
6396 xcb_input_set_device_modifier_mapping_unchecked (xcb_connection_t *c,
6397 uint8_t device_id,
6398 uint8_t keycodes_per_modifier,
6399 const uint8_t *keymaps);
6400
6401 /**
6402 * Return the reply
6403 * @param c The connection
6404 * @param cookie The cookie
6405 * @param e The xcb_generic_error_t supplied
6406 *
6407 * Returns the reply of the request asked by
6408 *
6409 * The parameter @p e supplied to this function must be NULL if
6410 * xcb_input_set_device_modifier_mapping_unchecked(). is used.
6411 * Otherwise, it stores the error if any.
6412 *
6413 * The returned value must be freed by the caller using free().
6414 */
6415 xcb_input_set_device_modifier_mapping_reply_t *
6416 xcb_input_set_device_modifier_mapping_reply (xcb_connection_t *c,
6417 xcb_input_set_device_modifier_mapping_cookie_t cookie /**< */,
6418 xcb_generic_error_t **e);
6419
6420 int
6421 xcb_input_get_device_button_mapping_sizeof (const void *_buffer);
6422
6423 /**
6424 *
6425 * @param c The connection
6426 * @return A cookie
6427 *
6428 * Delivers a request to the X server.
6429 *
6430 */
6431 xcb_input_get_device_button_mapping_cookie_t
6432 xcb_input_get_device_button_mapping (xcb_connection_t *c,
6433 uint8_t device_id);
6434
6435 /**
6436 *
6437 * @param c The connection
6438 * @return A cookie
6439 *
6440 * Delivers a request to the X server.
6441 *
6442 * This form can be used only if the request will cause
6443 * a reply to be generated. Any returned error will be
6444 * placed in the event queue.
6445 */
6446 xcb_input_get_device_button_mapping_cookie_t
6447 xcb_input_get_device_button_mapping_unchecked (xcb_connection_t *c,
6448 uint8_t device_id);
6449
6450 uint8_t *
6451 xcb_input_get_device_button_mapping_map (const xcb_input_get_device_button_mapping_reply_t *R);
6452
6453 int
6454 xcb_input_get_device_button_mapping_map_length (const xcb_input_get_device_button_mapping_reply_t *R);
6455
6456 xcb_generic_iterator_t
6457 xcb_input_get_device_button_mapping_map_end (const xcb_input_get_device_button_mapping_reply_t *R);
6458
6459 /**
6460 * Return the reply
6461 * @param c The connection
6462 * @param cookie The cookie
6463 * @param e The xcb_generic_error_t supplied
6464 *
6465 * Returns the reply of the request asked by
6466 *
6467 * The parameter @p e supplied to this function must be NULL if
6468 * xcb_input_get_device_button_mapping_unchecked(). is used.
6469 * Otherwise, it stores the error if any.
6470 *
6471 * The returned value must be freed by the caller using free().
6472 */
6473 xcb_input_get_device_button_mapping_reply_t *
6474 xcb_input_get_device_button_mapping_reply (xcb_connection_t *c,
6475 xcb_input_get_device_button_mapping_cookie_t cookie /**< */,
6476 xcb_generic_error_t **e);
6477
6478 int
6479 xcb_input_set_device_button_mapping_sizeof (const void *_buffer);
6480
6481 /**
6482 *
6483 * @param c The connection
6484 * @return A cookie
6485 *
6486 * Delivers a request to the X server.
6487 *
6488 */
6489 xcb_input_set_device_button_mapping_cookie_t
6490 xcb_input_set_device_button_mapping (xcb_connection_t *c,
6491 uint8_t device_id,
6492 uint8_t map_size,
6493 const uint8_t *map);
6494
6495 /**
6496 *
6497 * @param c The connection
6498 * @return A cookie
6499 *
6500 * Delivers a request to the X server.
6501 *
6502 * This form can be used only if the request will cause
6503 * a reply to be generated. Any returned error will be
6504 * placed in the event queue.
6505 */
6506 xcb_input_set_device_button_mapping_cookie_t
6507 xcb_input_set_device_button_mapping_unchecked (xcb_connection_t *c,
6508 uint8_t device_id,
6509 uint8_t map_size,
6510 const uint8_t *map);
6511
6512 /**
6513 * Return the reply
6514 * @param c The connection
6515 * @param cookie The cookie
6516 * @param e The xcb_generic_error_t supplied
6517 *
6518 * Returns the reply of the request asked by
6519 *
6520 * The parameter @p e supplied to this function must be NULL if
6521 * xcb_input_set_device_button_mapping_unchecked(). is used.
6522 * Otherwise, it stores the error if any.
6523 *
6524 * The returned value must be freed by the caller using free().
6525 */
6526 xcb_input_set_device_button_mapping_reply_t *
6527 xcb_input_set_device_button_mapping_reply (xcb_connection_t *c,
6528 xcb_input_set_device_button_mapping_cookie_t cookie /**< */,
6529 xcb_generic_error_t **e);
6530
6531 /**
6532 * Get the next element of the iterator
6533 * @param i Pointer to a xcb_input_key_state_iterator_t
6534 *
6535 * Get the next element in the iterator. The member rem is
6536 * decreased by one. The member data points to the next
6537 * element. The member index is increased by sizeof(xcb_input_key_state_t)
6538 */
6539 void
6540 xcb_input_key_state_next (xcb_input_key_state_iterator_t *i);
6541
6542 /**
6543 * Return the iterator pointing to the last element
6544 * @param i An xcb_input_key_state_iterator_t
6545 * @return The iterator pointing to the last element
6546 *
6547 * Set the current element in the iterator to the last element.
6548 * The member rem is set to 0. The member data points to the
6549 * last element.
6550 */
6551 xcb_generic_iterator_t
6552 xcb_input_key_state_end (xcb_input_key_state_iterator_t i);
6553
6554 /**
6555 * Get the next element of the iterator
6556 * @param i Pointer to a xcb_input_button_state_iterator_t
6557 *
6558 * Get the next element in the iterator. The member rem is
6559 * decreased by one. The member data points to the next
6560 * element. The member index is increased by sizeof(xcb_input_button_state_t)
6561 */
6562 void
6563 xcb_input_button_state_next (xcb_input_button_state_iterator_t *i);
6564
6565 /**
6566 * Return the iterator pointing to the last element
6567 * @param i An xcb_input_button_state_iterator_t
6568 * @return The iterator pointing to the last element
6569 *
6570 * Set the current element in the iterator to the last element.
6571 * The member rem is set to 0. The member data points to the
6572 * last element.
6573 */
6574 xcb_generic_iterator_t
6575 xcb_input_button_state_end (xcb_input_button_state_iterator_t i);
6576
6577 int
6578 xcb_input_valuator_state_sizeof (const void *_buffer);
6579
6580 int32_t *
6581 xcb_input_valuator_state_valuators (const xcb_input_valuator_state_t *R);
6582
6583 int
6584 xcb_input_valuator_state_valuators_length (const xcb_input_valuator_state_t *R);
6585
6586 xcb_generic_iterator_t
6587 xcb_input_valuator_state_valuators_end (const xcb_input_valuator_state_t *R);
6588
6589 /**
6590 * Get the next element of the iterator
6591 * @param i Pointer to a xcb_input_valuator_state_iterator_t
6592 *
6593 * Get the next element in the iterator. The member rem is
6594 * decreased by one. The member data points to the next
6595 * element. The member index is increased by sizeof(xcb_input_valuator_state_t)
6596 */
6597 void
6598 xcb_input_valuator_state_next (xcb_input_valuator_state_iterator_t *i);
6599
6600 /**
6601 * Return the iterator pointing to the last element
6602 * @param i An xcb_input_valuator_state_iterator_t
6603 * @return The iterator pointing to the last element
6604 *
6605 * Set the current element in the iterator to the last element.
6606 * The member rem is set to 0. The member data points to the
6607 * last element.
6608 */
6609 xcb_generic_iterator_t
6610 xcb_input_valuator_state_end (xcb_input_valuator_state_iterator_t i);
6611
6612 int32_t *
6613 xcb_input_input_state_data_valuator_valuators (const xcb_input_input_state_data_t *S);
6614
6615 int
6616 xcb_input_input_state_data_valuator_valuators_length (const xcb_input_input_state_t *R,
6617 const xcb_input_input_state_data_t *S);
6618
6619 xcb_generic_iterator_t
6620 xcb_input_input_state_data_valuator_valuators_end (const xcb_input_input_state_t *R,
6621 const xcb_input_input_state_data_t *S);
6622
6623 int
6624 xcb_input_input_state_data_serialize (void **_buffer,
6625 uint8_t class_id,
6626 const xcb_input_input_state_data_t *_aux);
6627
6628 int
6629 xcb_input_input_state_data_unpack (const void *_buffer,
6630 uint8_t class_id,
6631 xcb_input_input_state_data_t *_aux);
6632
6633 int
6634 xcb_input_input_state_data_sizeof (const void *_buffer,
6635 uint8_t class_id);
6636
6637 int
6638 xcb_input_input_state_sizeof (const void *_buffer);
6639
6640 /**
6641 * Get the next element of the iterator
6642 * @param i Pointer to a xcb_input_input_state_iterator_t
6643 *
6644 * Get the next element in the iterator. The member rem is
6645 * decreased by one. The member data points to the next
6646 * element. The member index is increased by sizeof(xcb_input_input_state_t)
6647 */
6648 void
6649 xcb_input_input_state_next (xcb_input_input_state_iterator_t *i);
6650
6651 /**
6652 * Return the iterator pointing to the last element
6653 * @param i An xcb_input_input_state_iterator_t
6654 * @return The iterator pointing to the last element
6655 *
6656 * Set the current element in the iterator to the last element.
6657 * The member rem is set to 0. The member data points to the
6658 * last element.
6659 */
6660 xcb_generic_iterator_t
6661 xcb_input_input_state_end (xcb_input_input_state_iterator_t i);
6662
6663 int
6664 xcb_input_query_device_state_sizeof (const void *_buffer);
6665
6666 /**
6667 *
6668 * @param c The connection
6669 * @return A cookie
6670 *
6671 * Delivers a request to the X server.
6672 *
6673 */
6674 xcb_input_query_device_state_cookie_t
6675 xcb_input_query_device_state (xcb_connection_t *c,
6676 uint8_t device_id);
6677
6678 /**
6679 *
6680 * @param c The connection
6681 * @return A cookie
6682 *
6683 * Delivers a request to the X server.
6684 *
6685 * This form can be used only if the request will cause
6686 * a reply to be generated. Any returned error will be
6687 * placed in the event queue.
6688 */
6689 xcb_input_query_device_state_cookie_t
6690 xcb_input_query_device_state_unchecked (xcb_connection_t *c,
6691 uint8_t device_id);
6692
6693 int
6694 xcb_input_query_device_state_classes_length (const xcb_input_query_device_state_reply_t *R);
6695
6696 xcb_input_input_state_iterator_t
6697 xcb_input_query_device_state_classes_iterator (const xcb_input_query_device_state_reply_t *R);
6698
6699 /**
6700 * Return the reply
6701 * @param c The connection
6702 * @param cookie The cookie
6703 * @param e The xcb_generic_error_t supplied
6704 *
6705 * Returns the reply of the request asked by
6706 *
6707 * The parameter @p e supplied to this function must be NULL if
6708 * xcb_input_query_device_state_unchecked(). is used.
6709 * Otherwise, it stores the error if any.
6710 *
6711 * The returned value must be freed by the caller using free().
6712 */
6713 xcb_input_query_device_state_reply_t *
6714 xcb_input_query_device_state_reply (xcb_connection_t *c,
6715 xcb_input_query_device_state_cookie_t cookie /**< */,
6716 xcb_generic_error_t **e);
6717
6718 /**
6719 *
6720 * @param c The connection
6721 * @return A cookie
6722 *
6723 * Delivers a request to the X server.
6724 *
6725 * This form can be used only if the request will not cause
6726 * a reply to be generated. Any returned error will be
6727 * saved for handling by xcb_request_check().
6728 */
6729 xcb_void_cookie_t
6730 xcb_input_device_bell_checked (xcb_connection_t *c,
6731 uint8_t device_id,
6732 uint8_t feedback_id,
6733 uint8_t feedback_class,
6734 int8_t percent);
6735
6736 /**
6737 *
6738 * @param c The connection
6739 * @return A cookie
6740 *
6741 * Delivers a request to the X server.
6742 *
6743 */
6744 xcb_void_cookie_t
6745 xcb_input_device_bell (xcb_connection_t *c,
6746 uint8_t device_id,
6747 uint8_t feedback_id,
6748 uint8_t feedback_class,
6749 int8_t percent);
6750
6751 int
6752 xcb_input_set_device_valuators_sizeof (const void *_buffer);
6753
6754 /**
6755 *
6756 * @param c The connection
6757 * @return A cookie
6758 *
6759 * Delivers a request to the X server.
6760 *
6761 */
6762 xcb_input_set_device_valuators_cookie_t
6763 xcb_input_set_device_valuators (xcb_connection_t *c,
6764 uint8_t device_id,
6765 uint8_t first_valuator,
6766 uint8_t num_valuators,
6767 const int32_t *valuators);
6768
6769 /**
6770 *
6771 * @param c The connection
6772 * @return A cookie
6773 *
6774 * Delivers a request to the X server.
6775 *
6776 * This form can be used only if the request will cause
6777 * a reply to be generated. Any returned error will be
6778 * placed in the event queue.
6779 */
6780 xcb_input_set_device_valuators_cookie_t
6781 xcb_input_set_device_valuators_unchecked (xcb_connection_t *c,
6782 uint8_t device_id,
6783 uint8_t first_valuator,
6784 uint8_t num_valuators,
6785 const int32_t *valuators);
6786
6787 /**
6788 * Return the reply
6789 * @param c The connection
6790 * @param cookie The cookie
6791 * @param e The xcb_generic_error_t supplied
6792 *
6793 * Returns the reply of the request asked by
6794 *
6795 * The parameter @p e supplied to this function must be NULL if
6796 * xcb_input_set_device_valuators_unchecked(). is used.
6797 * Otherwise, it stores the error if any.
6798 *
6799 * The returned value must be freed by the caller using free().
6800 */
6801 xcb_input_set_device_valuators_reply_t *
6802 xcb_input_set_device_valuators_reply (xcb_connection_t *c,
6803 xcb_input_set_device_valuators_cookie_t cookie /**< */,
6804 xcb_generic_error_t **e);
6805
6806 int
6807 xcb_input_device_resolution_state_sizeof (const void *_buffer);
6808
6809 uint32_t *
6810 xcb_input_device_resolution_state_resolution_values (const xcb_input_device_resolution_state_t *R);
6811
6812 int
6813 xcb_input_device_resolution_state_resolution_values_length (const xcb_input_device_resolution_state_t *R);
6814
6815 xcb_generic_iterator_t
6816 xcb_input_device_resolution_state_resolution_values_end (const xcb_input_device_resolution_state_t *R);
6817
6818 uint32_t *
6819 xcb_input_device_resolution_state_resolution_min (const xcb_input_device_resolution_state_t *R);
6820
6821 int
6822 xcb_input_device_resolution_state_resolution_min_length (const xcb_input_device_resolution_state_t *R);
6823
6824 xcb_generic_iterator_t
6825 xcb_input_device_resolution_state_resolution_min_end (const xcb_input_device_resolution_state_t *R);
6826
6827 uint32_t *
6828 xcb_input_device_resolution_state_resolution_max (const xcb_input_device_resolution_state_t *R);
6829
6830 int
6831 xcb_input_device_resolution_state_resolution_max_length (const xcb_input_device_resolution_state_t *R);
6832
6833 xcb_generic_iterator_t
6834 xcb_input_device_resolution_state_resolution_max_end (const xcb_input_device_resolution_state_t *R);
6835
6836 /**
6837 * Get the next element of the iterator
6838 * @param i Pointer to a xcb_input_device_resolution_state_iterator_t
6839 *
6840 * Get the next element in the iterator. The member rem is
6841 * decreased by one. The member data points to the next
6842 * element. The member index is increased by sizeof(xcb_input_device_resolution_state_t)
6843 */
6844 void
6845 xcb_input_device_resolution_state_next (xcb_input_device_resolution_state_iterator_t *i);
6846
6847 /**
6848 * Return the iterator pointing to the last element
6849 * @param i An xcb_input_device_resolution_state_iterator_t
6850 * @return The iterator pointing to the last element
6851 *
6852 * Set the current element in the iterator to the last element.
6853 * The member rem is set to 0. The member data points to the
6854 * last element.
6855 */
6856 xcb_generic_iterator_t
6857 xcb_input_device_resolution_state_end (xcb_input_device_resolution_state_iterator_t i);
6858
6859 /**
6860 * Get the next element of the iterator
6861 * @param i Pointer to a xcb_input_device_abs_calib_state_iterator_t
6862 *
6863 * Get the next element in the iterator. The member rem is
6864 * decreased by one. The member data points to the next
6865 * element. The member index is increased by sizeof(xcb_input_device_abs_calib_state_t)
6866 */
6867 void
6868 xcb_input_device_abs_calib_state_next (xcb_input_device_abs_calib_state_iterator_t *i);
6869
6870 /**
6871 * Return the iterator pointing to the last element
6872 * @param i An xcb_input_device_abs_calib_state_iterator_t
6873 * @return The iterator pointing to the last element
6874 *
6875 * Set the current element in the iterator to the last element.
6876 * The member rem is set to 0. The member data points to the
6877 * last element.
6878 */
6879 xcb_generic_iterator_t
6880 xcb_input_device_abs_calib_state_end (xcb_input_device_abs_calib_state_iterator_t i);
6881
6882 /**
6883 * Get the next element of the iterator
6884 * @param i Pointer to a xcb_input_device_abs_area_state_iterator_t
6885 *
6886 * Get the next element in the iterator. The member rem is
6887 * decreased by one. The member data points to the next
6888 * element. The member index is increased by sizeof(xcb_input_device_abs_area_state_t)
6889 */
6890 void
6891 xcb_input_device_abs_area_state_next (xcb_input_device_abs_area_state_iterator_t *i);
6892
6893 /**
6894 * Return the iterator pointing to the last element
6895 * @param i An xcb_input_device_abs_area_state_iterator_t
6896 * @return The iterator pointing to the last element
6897 *
6898 * Set the current element in the iterator to the last element.
6899 * The member rem is set to 0. The member data points to the
6900 * last element.
6901 */
6902 xcb_generic_iterator_t
6903 xcb_input_device_abs_area_state_end (xcb_input_device_abs_area_state_iterator_t i);
6904
6905 /**
6906 * Get the next element of the iterator
6907 * @param i Pointer to a xcb_input_device_core_state_iterator_t
6908 *
6909 * Get the next element in the iterator. The member rem is
6910 * decreased by one. The member data points to the next
6911 * element. The member index is increased by sizeof(xcb_input_device_core_state_t)
6912 */
6913 void
6914 xcb_input_device_core_state_next (xcb_input_device_core_state_iterator_t *i);
6915
6916 /**
6917 * Return the iterator pointing to the last element
6918 * @param i An xcb_input_device_core_state_iterator_t
6919 * @return The iterator pointing to the last element
6920 *
6921 * Set the current element in the iterator to the last element.
6922 * The member rem is set to 0. The member data points to the
6923 * last element.
6924 */
6925 xcb_generic_iterator_t
6926 xcb_input_device_core_state_end (xcb_input_device_core_state_iterator_t i);
6927
6928 /**
6929 * Get the next element of the iterator
6930 * @param i Pointer to a xcb_input_device_enable_state_iterator_t
6931 *
6932 * Get the next element in the iterator. The member rem is
6933 * decreased by one. The member data points to the next
6934 * element. The member index is increased by sizeof(xcb_input_device_enable_state_t)
6935 */
6936 void
6937 xcb_input_device_enable_state_next (xcb_input_device_enable_state_iterator_t *i);
6938
6939 /**
6940 * Return the iterator pointing to the last element
6941 * @param i An xcb_input_device_enable_state_iterator_t
6942 * @return The iterator pointing to the last element
6943 *
6944 * Set the current element in the iterator to the last element.
6945 * The member rem is set to 0. The member data points to the
6946 * last element.
6947 */
6948 xcb_generic_iterator_t
6949 xcb_input_device_enable_state_end (xcb_input_device_enable_state_iterator_t i);
6950
6951 uint32_t *
6952 xcb_input_device_state_data_resolution_resolution_values (const xcb_input_device_state_data_t *S);
6953
6954 int
6955 xcb_input_device_state_data_resolution_resolution_values_length (const xcb_input_device_state_t *R,
6956 const xcb_input_device_state_data_t *S);
6957
6958 xcb_generic_iterator_t
6959 xcb_input_device_state_data_resolution_resolution_values_end (const xcb_input_device_state_t *R,
6960 const xcb_input_device_state_data_t *S);
6961
6962 uint32_t *
6963 xcb_input_device_state_data_resolution_resolution_min (const xcb_input_device_state_data_t *S);
6964
6965 int
6966 xcb_input_device_state_data_resolution_resolution_min_length (const xcb_input_device_state_t *R,
6967 const xcb_input_device_state_data_t *S);
6968
6969 xcb_generic_iterator_t
6970 xcb_input_device_state_data_resolution_resolution_min_end (const xcb_input_device_state_t *R,
6971 const xcb_input_device_state_data_t *S);
6972
6973 uint32_t *
6974 xcb_input_device_state_data_resolution_resolution_max (const xcb_input_device_state_data_t *S);
6975
6976 int
6977 xcb_input_device_state_data_resolution_resolution_max_length (const xcb_input_device_state_t *R,
6978 const xcb_input_device_state_data_t *S);
6979
6980 xcb_generic_iterator_t
6981 xcb_input_device_state_data_resolution_resolution_max_end (const xcb_input_device_state_t *R,
6982 const xcb_input_device_state_data_t *S);
6983
6984 int
6985 xcb_input_device_state_data_serialize (void **_buffer,
6986 uint16_t control_id,
6987 const xcb_input_device_state_data_t *_aux);
6988
6989 int
6990 xcb_input_device_state_data_unpack (const void *_buffer,
6991 uint16_t control_id,
6992 xcb_input_device_state_data_t *_aux);
6993
6994 int
6995 xcb_input_device_state_data_sizeof (const void *_buffer,
6996 uint16_t control_id);
6997
6998 int
6999 xcb_input_device_state_sizeof (const void *_buffer);
7000
7001 /**
7002 * Get the next element of the iterator
7003 * @param i Pointer to a xcb_input_device_state_iterator_t
7004 *
7005 * Get the next element in the iterator. The member rem is
7006 * decreased by one. The member data points to the next
7007 * element. The member index is increased by sizeof(xcb_input_device_state_t)
7008 */
7009 void
7010 xcb_input_device_state_next (xcb_input_device_state_iterator_t *i);
7011
7012 /**
7013 * Return the iterator pointing to the last element
7014 * @param i An xcb_input_device_state_iterator_t
7015 * @return The iterator pointing to the last element
7016 *
7017 * Set the current element in the iterator to the last element.
7018 * The member rem is set to 0. The member data points to the
7019 * last element.
7020 */
7021 xcb_generic_iterator_t
7022 xcb_input_device_state_end (xcb_input_device_state_iterator_t i);
7023
7024 int
7025 xcb_input_get_device_control_sizeof (const void *_buffer);
7026
7027 /**
7028 *
7029 * @param c The connection
7030 * @return A cookie
7031 *
7032 * Delivers a request to the X server.
7033 *
7034 */
7035 xcb_input_get_device_control_cookie_t
7036 xcb_input_get_device_control (xcb_connection_t *c,
7037 uint16_t control_id,
7038 uint8_t device_id);
7039
7040 /**
7041 *
7042 * @param c The connection
7043 * @return A cookie
7044 *
7045 * Delivers a request to the X server.
7046 *
7047 * This form can be used only if the request will cause
7048 * a reply to be generated. Any returned error will be
7049 * placed in the event queue.
7050 */
7051 xcb_input_get_device_control_cookie_t
7052 xcb_input_get_device_control_unchecked (xcb_connection_t *c,
7053 uint16_t control_id,
7054 uint8_t device_id);
7055
7056 xcb_input_device_state_t *
7057 xcb_input_get_device_control_control (const xcb_input_get_device_control_reply_t *R);
7058
7059 /**
7060 * Return the reply
7061 * @param c The connection
7062 * @param cookie The cookie
7063 * @param e The xcb_generic_error_t supplied
7064 *
7065 * Returns the reply of the request asked by
7066 *
7067 * The parameter @p e supplied to this function must be NULL if
7068 * xcb_input_get_device_control_unchecked(). is used.
7069 * Otherwise, it stores the error if any.
7070 *
7071 * The returned value must be freed by the caller using free().
7072 */
7073 xcb_input_get_device_control_reply_t *
7074 xcb_input_get_device_control_reply (xcb_connection_t *c,
7075 xcb_input_get_device_control_cookie_t cookie /**< */,
7076 xcb_generic_error_t **e);
7077
7078 int
7079 xcb_input_device_resolution_ctl_sizeof (const void *_buffer);
7080
7081 uint32_t *
7082 xcb_input_device_resolution_ctl_resolution_values (const xcb_input_device_resolution_ctl_t *R);
7083
7084 int
7085 xcb_input_device_resolution_ctl_resolution_values_length (const xcb_input_device_resolution_ctl_t *R);
7086
7087 xcb_generic_iterator_t
7088 xcb_input_device_resolution_ctl_resolution_values_end (const xcb_input_device_resolution_ctl_t *R);
7089
7090 /**
7091 * Get the next element of the iterator
7092 * @param i Pointer to a xcb_input_device_resolution_ctl_iterator_t
7093 *
7094 * Get the next element in the iterator. The member rem is
7095 * decreased by one. The member data points to the next
7096 * element. The member index is increased by sizeof(xcb_input_device_resolution_ctl_t)
7097 */
7098 void
7099 xcb_input_device_resolution_ctl_next (xcb_input_device_resolution_ctl_iterator_t *i);
7100
7101 /**
7102 * Return the iterator pointing to the last element
7103 * @param i An xcb_input_device_resolution_ctl_iterator_t
7104 * @return The iterator pointing to the last element
7105 *
7106 * Set the current element in the iterator to the last element.
7107 * The member rem is set to 0. The member data points to the
7108 * last element.
7109 */
7110 xcb_generic_iterator_t
7111 xcb_input_device_resolution_ctl_end (xcb_input_device_resolution_ctl_iterator_t i);
7112
7113 /**
7114 * Get the next element of the iterator
7115 * @param i Pointer to a xcb_input_device_abs_calib_ctl_iterator_t
7116 *
7117 * Get the next element in the iterator. The member rem is
7118 * decreased by one. The member data points to the next
7119 * element. The member index is increased by sizeof(xcb_input_device_abs_calib_ctl_t)
7120 */
7121 void
7122 xcb_input_device_abs_calib_ctl_next (xcb_input_device_abs_calib_ctl_iterator_t *i);
7123
7124 /**
7125 * Return the iterator pointing to the last element
7126 * @param i An xcb_input_device_abs_calib_ctl_iterator_t
7127 * @return The iterator pointing to the last element
7128 *
7129 * Set the current element in the iterator to the last element.
7130 * The member rem is set to 0. The member data points to the
7131 * last element.
7132 */
7133 xcb_generic_iterator_t
7134 xcb_input_device_abs_calib_ctl_end (xcb_input_device_abs_calib_ctl_iterator_t i);
7135
7136 /**
7137 * Get the next element of the iterator
7138 * @param i Pointer to a xcb_input_device_abs_area_ctrl_iterator_t
7139 *
7140 * Get the next element in the iterator. The member rem is
7141 * decreased by one. The member data points to the next
7142 * element. The member index is increased by sizeof(xcb_input_device_abs_area_ctrl_t)
7143 */
7144 void
7145 xcb_input_device_abs_area_ctrl_next (xcb_input_device_abs_area_ctrl_iterator_t *i);
7146
7147 /**
7148 * Return the iterator pointing to the last element
7149 * @param i An xcb_input_device_abs_area_ctrl_iterator_t
7150 * @return The iterator pointing to the last element
7151 *
7152 * Set the current element in the iterator to the last element.
7153 * The member rem is set to 0. The member data points to the
7154 * last element.
7155 */
7156 xcb_generic_iterator_t
7157 xcb_input_device_abs_area_ctrl_end (xcb_input_device_abs_area_ctrl_iterator_t i);
7158
7159 /**
7160 * Get the next element of the iterator
7161 * @param i Pointer to a xcb_input_device_core_ctrl_iterator_t
7162 *
7163 * Get the next element in the iterator. The member rem is
7164 * decreased by one. The member data points to the next
7165 * element. The member index is increased by sizeof(xcb_input_device_core_ctrl_t)
7166 */
7167 void
7168 xcb_input_device_core_ctrl_next (xcb_input_device_core_ctrl_iterator_t *i);
7169
7170 /**
7171 * Return the iterator pointing to the last element
7172 * @param i An xcb_input_device_core_ctrl_iterator_t
7173 * @return The iterator pointing to the last element
7174 *
7175 * Set the current element in the iterator to the last element.
7176 * The member rem is set to 0. The member data points to the
7177 * last element.
7178 */
7179 xcb_generic_iterator_t
7180 xcb_input_device_core_ctrl_end (xcb_input_device_core_ctrl_iterator_t i);
7181
7182 /**
7183 * Get the next element of the iterator
7184 * @param i Pointer to a xcb_input_device_enable_ctrl_iterator_t
7185 *
7186 * Get the next element in the iterator. The member rem is
7187 * decreased by one. The member data points to the next
7188 * element. The member index is increased by sizeof(xcb_input_device_enable_ctrl_t)
7189 */
7190 void
7191 xcb_input_device_enable_ctrl_next (xcb_input_device_enable_ctrl_iterator_t *i);
7192
7193 /**
7194 * Return the iterator pointing to the last element
7195 * @param i An xcb_input_device_enable_ctrl_iterator_t
7196 * @return The iterator pointing to the last element
7197 *
7198 * Set the current element in the iterator to the last element.
7199 * The member rem is set to 0. The member data points to the
7200 * last element.
7201 */
7202 xcb_generic_iterator_t
7203 xcb_input_device_enable_ctrl_end (xcb_input_device_enable_ctrl_iterator_t i);
7204
7205 uint32_t *
7206 xcb_input_device_ctl_data_resolution_resolution_values (const xcb_input_device_ctl_data_t *S);
7207
7208 int
7209 xcb_input_device_ctl_data_resolution_resolution_values_length (const xcb_input_device_ctl_t *R,
7210 const xcb_input_device_ctl_data_t *S);
7211
7212 xcb_generic_iterator_t
7213 xcb_input_device_ctl_data_resolution_resolution_values_end (const xcb_input_device_ctl_t *R,
7214 const xcb_input_device_ctl_data_t *S);
7215
7216 int
7217 xcb_input_device_ctl_data_serialize (void **_buffer,
7218 uint16_t control_id,
7219 const xcb_input_device_ctl_data_t *_aux);
7220
7221 int
7222 xcb_input_device_ctl_data_unpack (const void *_buffer,
7223 uint16_t control_id,
7224 xcb_input_device_ctl_data_t *_aux);
7225
7226 int
7227 xcb_input_device_ctl_data_sizeof (const void *_buffer,
7228 uint16_t control_id);
7229
7230 int
7231 xcb_input_device_ctl_sizeof (const void *_buffer);
7232
7233 /**
7234 * Get the next element of the iterator
7235 * @param i Pointer to a xcb_input_device_ctl_iterator_t
7236 *
7237 * Get the next element in the iterator. The member rem is
7238 * decreased by one. The member data points to the next
7239 * element. The member index is increased by sizeof(xcb_input_device_ctl_t)
7240 */
7241 void
7242 xcb_input_device_ctl_next (xcb_input_device_ctl_iterator_t *i);
7243
7244 /**
7245 * Return the iterator pointing to the last element
7246 * @param i An xcb_input_device_ctl_iterator_t
7247 * @return The iterator pointing to the last element
7248 *
7249 * Set the current element in the iterator to the last element.
7250 * The member rem is set to 0. The member data points to the
7251 * last element.
7252 */
7253 xcb_generic_iterator_t
7254 xcb_input_device_ctl_end (xcb_input_device_ctl_iterator_t i);
7255
7256 int
7257 xcb_input_change_device_control_sizeof (const void *_buffer);
7258
7259 /**
7260 *
7261 * @param c The connection
7262 * @return A cookie
7263 *
7264 * Delivers a request to the X server.
7265 *
7266 */
7267 xcb_input_change_device_control_cookie_t
7268 xcb_input_change_device_control (xcb_connection_t *c,
7269 uint16_t control_id,
7270 uint8_t device_id,
7271 xcb_input_device_ctl_t *control);
7272
7273 /**
7274 *
7275 * @param c The connection
7276 * @return A cookie
7277 *
7278 * Delivers a request to the X server.
7279 *
7280 * This form can be used only if the request will cause
7281 * a reply to be generated. Any returned error will be
7282 * placed in the event queue.
7283 */
7284 xcb_input_change_device_control_cookie_t
7285 xcb_input_change_device_control_unchecked (xcb_connection_t *c,
7286 uint16_t control_id,
7287 uint8_t device_id,
7288 xcb_input_device_ctl_t *control);
7289
7290 /**
7291 * Return the reply
7292 * @param c The connection
7293 * @param cookie The cookie
7294 * @param e The xcb_generic_error_t supplied
7295 *
7296 * Returns the reply of the request asked by
7297 *
7298 * The parameter @p e supplied to this function must be NULL if
7299 * xcb_input_change_device_control_unchecked(). is used.
7300 * Otherwise, it stores the error if any.
7301 *
7302 * The returned value must be freed by the caller using free().
7303 */
7304 xcb_input_change_device_control_reply_t *
7305 xcb_input_change_device_control_reply (xcb_connection_t *c,
7306 xcb_input_change_device_control_cookie_t cookie /**< */,
7307 xcb_generic_error_t **e);
7308
7309 int
7310 xcb_input_list_device_properties_sizeof (const void *_buffer);
7311
7312 /**
7313 *
7314 * @param c The connection
7315 * @return A cookie
7316 *
7317 * Delivers a request to the X server.
7318 *
7319 */
7320 xcb_input_list_device_properties_cookie_t
7321 xcb_input_list_device_properties (xcb_connection_t *c,
7322 uint8_t device_id);
7323
7324 /**
7325 *
7326 * @param c The connection
7327 * @return A cookie
7328 *
7329 * Delivers a request to the X server.
7330 *
7331 * This form can be used only if the request will cause
7332 * a reply to be generated. Any returned error will be
7333 * placed in the event queue.
7334 */
7335 xcb_input_list_device_properties_cookie_t
7336 xcb_input_list_device_properties_unchecked (xcb_connection_t *c,
7337 uint8_t device_id);
7338
7339 xcb_atom_t *
7340 xcb_input_list_device_properties_atoms (const xcb_input_list_device_properties_reply_t *R);
7341
7342 int
7343 xcb_input_list_device_properties_atoms_length (const xcb_input_list_device_properties_reply_t *R);
7344
7345 xcb_generic_iterator_t
7346 xcb_input_list_device_properties_atoms_end (const xcb_input_list_device_properties_reply_t *R);
7347
7348 /**
7349 * Return the reply
7350 * @param c The connection
7351 * @param cookie The cookie
7352 * @param e The xcb_generic_error_t supplied
7353 *
7354 * Returns the reply of the request asked by
7355 *
7356 * The parameter @p e supplied to this function must be NULL if
7357 * xcb_input_list_device_properties_unchecked(). is used.
7358 * Otherwise, it stores the error if any.
7359 *
7360 * The returned value must be freed by the caller using free().
7361 */
7362 xcb_input_list_device_properties_reply_t *
7363 xcb_input_list_device_properties_reply (xcb_connection_t *c,
7364 xcb_input_list_device_properties_cookie_t cookie /**< */,
7365 xcb_generic_error_t **e);
7366
7367 uint8_t *
7368 xcb_input_change_device_property_items_data_8 (const xcb_input_change_device_property_items_t *S);
7369
7370 int
7371 xcb_input_change_device_property_items_data_8_length (const xcb_input_change_device_property_request_t *R,
7372 const xcb_input_change_device_property_items_t *S);
7373
7374 xcb_generic_iterator_t
7375 xcb_input_change_device_property_items_data_8_end (const xcb_input_change_device_property_request_t *R,
7376 const xcb_input_change_device_property_items_t *S);
7377
7378 uint16_t *
7379 xcb_input_change_device_property_items_data_16 (const xcb_input_change_device_property_items_t *S);
7380
7381 int
7382 xcb_input_change_device_property_items_data_16_length (const xcb_input_change_device_property_request_t *R,
7383 const xcb_input_change_device_property_items_t *S);
7384
7385 xcb_generic_iterator_t
7386 xcb_input_change_device_property_items_data_16_end (const xcb_input_change_device_property_request_t *R,
7387 const xcb_input_change_device_property_items_t *S);
7388
7389 uint32_t *
7390 xcb_input_change_device_property_items_data_32 (const xcb_input_change_device_property_items_t *S);
7391
7392 int
7393 xcb_input_change_device_property_items_data_32_length (const xcb_input_change_device_property_request_t *R,
7394 const xcb_input_change_device_property_items_t *S);
7395
7396 xcb_generic_iterator_t
7397 xcb_input_change_device_property_items_data_32_end (const xcb_input_change_device_property_request_t *R,
7398 const xcb_input_change_device_property_items_t *S);
7399
7400 int
7401 xcb_input_change_device_property_items_serialize (void **_buffer,
7402 uint32_t num_items,
7403 uint8_t format,
7404 const xcb_input_change_device_property_items_t *_aux);
7405
7406 int
7407 xcb_input_change_device_property_items_unpack (const void *_buffer,
7408 uint32_t num_items,
7409 uint8_t format,
7410 xcb_input_change_device_property_items_t *_aux);
7411
7412 int
7413 xcb_input_change_device_property_items_sizeof (const void *_buffer,
7414 uint32_t num_items,
7415 uint8_t format);
7416
7417 int
7418 xcb_input_change_device_property_sizeof (const void *_buffer);
7419
7420 /**
7421 *
7422 * @param c The connection
7423 * @return A cookie
7424 *
7425 * Delivers a request to the X server.
7426 *
7427 * This form can be used only if the request will not cause
7428 * a reply to be generated. Any returned error will be
7429 * saved for handling by xcb_request_check().
7430 */
7431 xcb_void_cookie_t
7432 xcb_input_change_device_property_checked (xcb_connection_t *c,
7433 xcb_atom_t property,
7434 xcb_atom_t type,
7435 uint8_t device_id,
7436 uint8_t format,
7437 uint8_t mode,
7438 uint32_t num_items,
7439 const void *items);
7440
7441 /**
7442 *
7443 * @param c The connection
7444 * @return A cookie
7445 *
7446 * Delivers a request to the X server.
7447 *
7448 */
7449 xcb_void_cookie_t
7450 xcb_input_change_device_property (xcb_connection_t *c,
7451 xcb_atom_t property,
7452 xcb_atom_t type,
7453 uint8_t device_id,
7454 uint8_t format,
7455 uint8_t mode,
7456 uint32_t num_items,
7457 const void *items);
7458
7459 /**
7460 *
7461 * @param c The connection
7462 * @return A cookie
7463 *
7464 * Delivers a request to the X server.
7465 *
7466 * This form can be used only if the request will not cause
7467 * a reply to be generated. Any returned error will be
7468 * saved for handling by xcb_request_check().
7469 */
7470 xcb_void_cookie_t
7471 xcb_input_change_device_property_aux_checked (xcb_connection_t *c,
7472 xcb_atom_t property,
7473 xcb_atom_t type,
7474 uint8_t device_id,
7475 uint8_t format,
7476 uint8_t mode,
7477 uint32_t num_items,
7478 const xcb_input_change_device_property_items_t *items);
7479
7480 /**
7481 *
7482 * @param c The connection
7483 * @return A cookie
7484 *
7485 * Delivers a request to the X server.
7486 *
7487 */
7488 xcb_void_cookie_t
7489 xcb_input_change_device_property_aux (xcb_connection_t *c,
7490 xcb_atom_t property,
7491 xcb_atom_t type,
7492 uint8_t device_id,
7493 uint8_t format,
7494 uint8_t mode,
7495 uint32_t num_items,
7496 const xcb_input_change_device_property_items_t *items);
7497
7498 void *
7499 xcb_input_change_device_property_items (const xcb_input_change_device_property_request_t *R);
7500
7501 /**
7502 *
7503 * @param c The connection
7504 * @return A cookie
7505 *
7506 * Delivers a request to the X server.
7507 *
7508 * This form can be used only if the request will not cause
7509 * a reply to be generated. Any returned error will be
7510 * saved for handling by xcb_request_check().
7511 */
7512 xcb_void_cookie_t
7513 xcb_input_delete_device_property_checked (xcb_connection_t *c,
7514 xcb_atom_t property,
7515 uint8_t device_id);
7516
7517 /**
7518 *
7519 * @param c The connection
7520 * @return A cookie
7521 *
7522 * Delivers a request to the X server.
7523 *
7524 */
7525 xcb_void_cookie_t
7526 xcb_input_delete_device_property (xcb_connection_t *c,
7527 xcb_atom_t property,
7528 uint8_t device_id);
7529
7530 uint8_t *
7531 xcb_input_get_device_property_items_data_8 (const xcb_input_get_device_property_items_t *S);
7532
7533 int
7534 xcb_input_get_device_property_items_data_8_length (const xcb_input_get_device_property_reply_t *R,
7535 const xcb_input_get_device_property_items_t *S);
7536
7537 xcb_generic_iterator_t
7538 xcb_input_get_device_property_items_data_8_end (const xcb_input_get_device_property_reply_t *R,
7539 const xcb_input_get_device_property_items_t *S);
7540
7541 uint16_t *
7542 xcb_input_get_device_property_items_data_16 (const xcb_input_get_device_property_items_t *S);
7543
7544 int
7545 xcb_input_get_device_property_items_data_16_length (const xcb_input_get_device_property_reply_t *R,
7546 const xcb_input_get_device_property_items_t *S);
7547
7548 xcb_generic_iterator_t
7549 xcb_input_get_device_property_items_data_16_end (const xcb_input_get_device_property_reply_t *R,
7550 const xcb_input_get_device_property_items_t *S);
7551
7552 uint32_t *
7553 xcb_input_get_device_property_items_data_32 (const xcb_input_get_device_property_items_t *S);
7554
7555 int
7556 xcb_input_get_device_property_items_data_32_length (const xcb_input_get_device_property_reply_t *R,
7557 const xcb_input_get_device_property_items_t *S);
7558
7559 xcb_generic_iterator_t
7560 xcb_input_get_device_property_items_data_32_end (const xcb_input_get_device_property_reply_t *R,
7561 const xcb_input_get_device_property_items_t *S);
7562
7563 int
7564 xcb_input_get_device_property_items_serialize (void **_buffer,
7565 uint32_t num_items,
7566 uint8_t format,
7567 const xcb_input_get_device_property_items_t *_aux);
7568
7569 int
7570 xcb_input_get_device_property_items_unpack (const void *_buffer,
7571 uint32_t num_items,
7572 uint8_t format,
7573 xcb_input_get_device_property_items_t *_aux);
7574
7575 int
7576 xcb_input_get_device_property_items_sizeof (const void *_buffer,
7577 uint32_t num_items,
7578 uint8_t format);
7579
7580 int
7581 xcb_input_get_device_property_sizeof (const void *_buffer);
7582
7583 /**
7584 *
7585 * @param c The connection
7586 * @return A cookie
7587 *
7588 * Delivers a request to the X server.
7589 *
7590 */
7591 xcb_input_get_device_property_cookie_t
7592 xcb_input_get_device_property (xcb_connection_t *c,
7593 xcb_atom_t property,
7594 xcb_atom_t type,
7595 uint32_t offset,
7596 uint32_t len,
7597 uint8_t device_id,
7598 uint8_t _delete);
7599
7600 /**
7601 *
7602 * @param c The connection
7603 * @return A cookie
7604 *
7605 * Delivers a request to the X server.
7606 *
7607 * This form can be used only if the request will cause
7608 * a reply to be generated. Any returned error will be
7609 * placed in the event queue.
7610 */
7611 xcb_input_get_device_property_cookie_t
7612 xcb_input_get_device_property_unchecked (xcb_connection_t *c,
7613 xcb_atom_t property,
7614 xcb_atom_t type,
7615 uint32_t offset,
7616 uint32_t len,
7617 uint8_t device_id,
7618 uint8_t _delete);
7619
7620 void *
7621 xcb_input_get_device_property_items (const xcb_input_get_device_property_reply_t *R);
7622
7623 /**
7624 * Return the reply
7625 * @param c The connection
7626 * @param cookie The cookie
7627 * @param e The xcb_generic_error_t supplied
7628 *
7629 * Returns the reply of the request asked by
7630 *
7631 * The parameter @p e supplied to this function must be NULL if
7632 * xcb_input_get_device_property_unchecked(). is used.
7633 * Otherwise, it stores the error if any.
7634 *
7635 * The returned value must be freed by the caller using free().
7636 */
7637 xcb_input_get_device_property_reply_t *
7638 xcb_input_get_device_property_reply (xcb_connection_t *c,
7639 xcb_input_get_device_property_cookie_t cookie /**< */,
7640 xcb_generic_error_t **e);
7641
7642 /**
7643 * Get the next element of the iterator
7644 * @param i Pointer to a xcb_input_group_info_iterator_t
7645 *
7646 * Get the next element in the iterator. The member rem is
7647 * decreased by one. The member data points to the next
7648 * element. The member index is increased by sizeof(xcb_input_group_info_t)
7649 */
7650 void
7651 xcb_input_group_info_next (xcb_input_group_info_iterator_t *i);
7652
7653 /**
7654 * Return the iterator pointing to the last element
7655 * @param i An xcb_input_group_info_iterator_t
7656 * @return The iterator pointing to the last element
7657 *
7658 * Set the current element in the iterator to the last element.
7659 * The member rem is set to 0. The member data points to the
7660 * last element.
7661 */
7662 xcb_generic_iterator_t
7663 xcb_input_group_info_end (xcb_input_group_info_iterator_t i);
7664
7665 /**
7666 * Get the next element of the iterator
7667 * @param i Pointer to a xcb_input_modifier_info_iterator_t
7668 *
7669 * Get the next element in the iterator. The member rem is
7670 * decreased by one. The member data points to the next
7671 * element. The member index is increased by sizeof(xcb_input_modifier_info_t)
7672 */
7673 void
7674 xcb_input_modifier_info_next (xcb_input_modifier_info_iterator_t *i);
7675
7676 /**
7677 * Return the iterator pointing to the last element
7678 * @param i An xcb_input_modifier_info_iterator_t
7679 * @return The iterator pointing to the last element
7680 *
7681 * Set the current element in the iterator to the last element.
7682 * The member rem is set to 0. The member data points to the
7683 * last element.
7684 */
7685 xcb_generic_iterator_t
7686 xcb_input_modifier_info_end (xcb_input_modifier_info_iterator_t i);
7687
7688 int
7689 xcb_input_xi_query_pointer_sizeof (const void *_buffer);
7690
7691 /**
7692 *
7693 * @param c The connection
7694 * @return A cookie
7695 *
7696 * Delivers a request to the X server.
7697 *
7698 */
7699 xcb_input_xi_query_pointer_cookie_t
7700 xcb_input_xi_query_pointer (xcb_connection_t *c,
7701 xcb_window_t window,
7702 xcb_input_device_id_t deviceid);
7703
7704 /**
7705 *
7706 * @param c The connection
7707 * @return A cookie
7708 *
7709 * Delivers a request to the X server.
7710 *
7711 * This form can be used only if the request will cause
7712 * a reply to be generated. Any returned error will be
7713 * placed in the event queue.
7714 */
7715 xcb_input_xi_query_pointer_cookie_t
7716 xcb_input_xi_query_pointer_unchecked (xcb_connection_t *c,
7717 xcb_window_t window,
7718 xcb_input_device_id_t deviceid);
7719
7720 uint32_t *
7721 xcb_input_xi_query_pointer_buttons (const xcb_input_xi_query_pointer_reply_t *R);
7722
7723 int
7724 xcb_input_xi_query_pointer_buttons_length (const xcb_input_xi_query_pointer_reply_t *R);
7725
7726 xcb_generic_iterator_t
7727 xcb_input_xi_query_pointer_buttons_end (const xcb_input_xi_query_pointer_reply_t *R);
7728
7729 /**
7730 * Return the reply
7731 * @param c The connection
7732 * @param cookie The cookie
7733 * @param e The xcb_generic_error_t supplied
7734 *
7735 * Returns the reply of the request asked by
7736 *
7737 * The parameter @p e supplied to this function must be NULL if
7738 * xcb_input_xi_query_pointer_unchecked(). is used.
7739 * Otherwise, it stores the error if any.
7740 *
7741 * The returned value must be freed by the caller using free().
7742 */
7743 xcb_input_xi_query_pointer_reply_t *
7744 xcb_input_xi_query_pointer_reply (xcb_connection_t *c,
7745 xcb_input_xi_query_pointer_cookie_t cookie /**< */,
7746 xcb_generic_error_t **e);
7747
7748 /**
7749 *
7750 * @param c The connection
7751 * @return A cookie
7752 *
7753 * Delivers a request to the X server.
7754 *
7755 * This form can be used only if the request will not cause
7756 * a reply to be generated. Any returned error will be
7757 * saved for handling by xcb_request_check().
7758 */
7759 xcb_void_cookie_t
7760 xcb_input_xi_warp_pointer_checked (xcb_connection_t *c,
7761 xcb_window_t src_win,
7762 xcb_window_t dst_win,
7763 xcb_input_fp1616_t src_x,
7764 xcb_input_fp1616_t src_y,
7765 uint16_t src_width,
7766 uint16_t src_height,
7767 xcb_input_fp1616_t dst_x,
7768 xcb_input_fp1616_t dst_y,
7769 xcb_input_device_id_t deviceid);
7770
7771 /**
7772 *
7773 * @param c The connection
7774 * @return A cookie
7775 *
7776 * Delivers a request to the X server.
7777 *
7778 */
7779 xcb_void_cookie_t
7780 xcb_input_xi_warp_pointer (xcb_connection_t *c,
7781 xcb_window_t src_win,
7782 xcb_window_t dst_win,
7783 xcb_input_fp1616_t src_x,
7784 xcb_input_fp1616_t src_y,
7785 uint16_t src_width,
7786 uint16_t src_height,
7787 xcb_input_fp1616_t dst_x,
7788 xcb_input_fp1616_t dst_y,
7789 xcb_input_device_id_t deviceid);
7790
7791 /**
7792 *
7793 * @param c The connection
7794 * @return A cookie
7795 *
7796 * Delivers a request to the X server.
7797 *
7798 * This form can be used only if the request will not cause
7799 * a reply to be generated. Any returned error will be
7800 * saved for handling by xcb_request_check().
7801 */
7802 xcb_void_cookie_t
7803 xcb_input_xi_change_cursor_checked (xcb_connection_t *c,
7804 xcb_window_t window,
7805 xcb_cursor_t cursor,
7806 xcb_input_device_id_t deviceid);
7807
7808 /**
7809 *
7810 * @param c The connection
7811 * @return A cookie
7812 *
7813 * Delivers a request to the X server.
7814 *
7815 */
7816 xcb_void_cookie_t
7817 xcb_input_xi_change_cursor (xcb_connection_t *c,
7818 xcb_window_t window,
7819 xcb_cursor_t cursor,
7820 xcb_input_device_id_t deviceid);
7821
7822 int
7823 xcb_input_add_master_sizeof (const void *_buffer);
7824
7825 char *
7826 xcb_input_add_master_name (const xcb_input_add_master_t *R);
7827
7828 int
7829 xcb_input_add_master_name_length (const xcb_input_add_master_t *R);
7830
7831 xcb_generic_iterator_t
7832 xcb_input_add_master_name_end (const xcb_input_add_master_t *R);
7833
7834 /**
7835 * Get the next element of the iterator
7836 * @param i Pointer to a xcb_input_add_master_iterator_t
7837 *
7838 * Get the next element in the iterator. The member rem is
7839 * decreased by one. The member data points to the next
7840 * element. The member index is increased by sizeof(xcb_input_add_master_t)
7841 */
7842 void
7843 xcb_input_add_master_next (xcb_input_add_master_iterator_t *i);
7844
7845 /**
7846 * Return the iterator pointing to the last element
7847 * @param i An xcb_input_add_master_iterator_t
7848 * @return The iterator pointing to the last element
7849 *
7850 * Set the current element in the iterator to the last element.
7851 * The member rem is set to 0. The member data points to the
7852 * last element.
7853 */
7854 xcb_generic_iterator_t
7855 xcb_input_add_master_end (xcb_input_add_master_iterator_t i);
7856
7857 /**
7858 * Get the next element of the iterator
7859 * @param i Pointer to a xcb_input_remove_master_iterator_t
7860 *
7861 * Get the next element in the iterator. The member rem is
7862 * decreased by one. The member data points to the next
7863 * element. The member index is increased by sizeof(xcb_input_remove_master_t)
7864 */
7865 void
7866 xcb_input_remove_master_next (xcb_input_remove_master_iterator_t *i);
7867
7868 /**
7869 * Return the iterator pointing to the last element
7870 * @param i An xcb_input_remove_master_iterator_t
7871 * @return The iterator pointing to the last element
7872 *
7873 * Set the current element in the iterator to the last element.
7874 * The member rem is set to 0. The member data points to the
7875 * last element.
7876 */
7877 xcb_generic_iterator_t
7878 xcb_input_remove_master_end (xcb_input_remove_master_iterator_t i);
7879
7880 /**
7881 * Get the next element of the iterator
7882 * @param i Pointer to a xcb_input_attach_slave_iterator_t
7883 *
7884 * Get the next element in the iterator. The member rem is
7885 * decreased by one. The member data points to the next
7886 * element. The member index is increased by sizeof(xcb_input_attach_slave_t)
7887 */
7888 void
7889 xcb_input_attach_slave_next (xcb_input_attach_slave_iterator_t *i);
7890
7891 /**
7892 * Return the iterator pointing to the last element
7893 * @param i An xcb_input_attach_slave_iterator_t
7894 * @return The iterator pointing to the last element
7895 *
7896 * Set the current element in the iterator to the last element.
7897 * The member rem is set to 0. The member data points to the
7898 * last element.
7899 */
7900 xcb_generic_iterator_t
7901 xcb_input_attach_slave_end (xcb_input_attach_slave_iterator_t i);
7902
7903 /**
7904 * Get the next element of the iterator
7905 * @param i Pointer to a xcb_input_detach_slave_iterator_t
7906 *
7907 * Get the next element in the iterator. The member rem is
7908 * decreased by one. The member data points to the next
7909 * element. The member index is increased by sizeof(xcb_input_detach_slave_t)
7910 */
7911 void
7912 xcb_input_detach_slave_next (xcb_input_detach_slave_iterator_t *i);
7913
7914 /**
7915 * Return the iterator pointing to the last element
7916 * @param i An xcb_input_detach_slave_iterator_t
7917 * @return The iterator pointing to the last element
7918 *
7919 * Set the current element in the iterator to the last element.
7920 * The member rem is set to 0. The member data points to the
7921 * last element.
7922 */
7923 xcb_generic_iterator_t
7924 xcb_input_detach_slave_end (xcb_input_detach_slave_iterator_t i);
7925
7926 char *
7927 xcb_input_hierarchy_change_data_add_master_name (const xcb_input_hierarchy_change_data_t *S);
7928
7929 int
7930 xcb_input_hierarchy_change_data_add_master_name_length (const xcb_input_hierarchy_change_t *R,
7931 const xcb_input_hierarchy_change_data_t *S);
7932
7933 xcb_generic_iterator_t
7934 xcb_input_hierarchy_change_data_add_master_name_end (const xcb_input_hierarchy_change_t *R,
7935 const xcb_input_hierarchy_change_data_t *S);
7936
7937 int
7938 xcb_input_hierarchy_change_data_serialize (void **_buffer,
7939 uint16_t type,
7940 const xcb_input_hierarchy_change_data_t *_aux);
7941
7942 int
7943 xcb_input_hierarchy_change_data_unpack (const void *_buffer,
7944 uint16_t type,
7945 xcb_input_hierarchy_change_data_t *_aux);
7946
7947 int
7948 xcb_input_hierarchy_change_data_sizeof (const void *_buffer,
7949 uint16_t type);
7950
7951 int
7952 xcb_input_hierarchy_change_sizeof (const void *_buffer);
7953
7954 /**
7955 * Get the next element of the iterator
7956 * @param i Pointer to a xcb_input_hierarchy_change_iterator_t
7957 *
7958 * Get the next element in the iterator. The member rem is
7959 * decreased by one. The member data points to the next
7960 * element. The member index is increased by sizeof(xcb_input_hierarchy_change_t)
7961 */
7962 void
7963 xcb_input_hierarchy_change_next (xcb_input_hierarchy_change_iterator_t *i);
7964
7965 /**
7966 * Return the iterator pointing to the last element
7967 * @param i An xcb_input_hierarchy_change_iterator_t
7968 * @return The iterator pointing to the last element
7969 *
7970 * Set the current element in the iterator to the last element.
7971 * The member rem is set to 0. The member data points to the
7972 * last element.
7973 */
7974 xcb_generic_iterator_t
7975 xcb_input_hierarchy_change_end (xcb_input_hierarchy_change_iterator_t i);
7976
7977 int
7978 xcb_input_xi_change_hierarchy_sizeof (const void *_buffer);
7979
7980 /**
7981 *
7982 * @param c The connection
7983 * @return A cookie
7984 *
7985 * Delivers a request to the X server.
7986 *
7987 * This form can be used only if the request will not cause
7988 * a reply to be generated. Any returned error will be
7989 * saved for handling by xcb_request_check().
7990 */
7991 xcb_void_cookie_t
7992 xcb_input_xi_change_hierarchy_checked (xcb_connection_t *c,
7993 uint8_t num_changes,
7994 const xcb_input_hierarchy_change_t *changes);
7995
7996 /**
7997 *
7998 * @param c The connection
7999 * @return A cookie
8000 *
8001 * Delivers a request to the X server.
8002 *
8003 */
8004 xcb_void_cookie_t
8005 xcb_input_xi_change_hierarchy (xcb_connection_t *c,
8006 uint8_t num_changes,
8007 const xcb_input_hierarchy_change_t *changes);
8008
8009 int
8010 xcb_input_xi_change_hierarchy_changes_length (const xcb_input_xi_change_hierarchy_request_t *R);
8011
8012 xcb_input_hierarchy_change_iterator_t
8013 xcb_input_xi_change_hierarchy_changes_iterator (const xcb_input_xi_change_hierarchy_request_t *R);
8014
8015 /**
8016 *
8017 * @param c The connection
8018 * @return A cookie
8019 *
8020 * Delivers a request to the X server.
8021 *
8022 * This form can be used only if the request will not cause
8023 * a reply to be generated. Any returned error will be
8024 * saved for handling by xcb_request_check().
8025 */
8026 xcb_void_cookie_t
8027 xcb_input_xi_set_client_pointer_checked (xcb_connection_t *c,
8028 xcb_window_t window,
8029 xcb_input_device_id_t deviceid);
8030
8031 /**
8032 *
8033 * @param c The connection
8034 * @return A cookie
8035 *
8036 * Delivers a request to the X server.
8037 *
8038 */
8039 xcb_void_cookie_t
8040 xcb_input_xi_set_client_pointer (xcb_connection_t *c,
8041 xcb_window_t window,
8042 xcb_input_device_id_t deviceid);
8043
8044 /**
8045 *
8046 * @param c The connection
8047 * @return A cookie
8048 *
8049 * Delivers a request to the X server.
8050 *
8051 */
8052 xcb_input_xi_get_client_pointer_cookie_t
8053 xcb_input_xi_get_client_pointer (xcb_connection_t *c,
8054 xcb_window_t window);
8055
8056 /**
8057 *
8058 * @param c The connection
8059 * @return A cookie
8060 *
8061 * Delivers a request to the X server.
8062 *
8063 * This form can be used only if the request will cause
8064 * a reply to be generated. Any returned error will be
8065 * placed in the event queue.
8066 */
8067 xcb_input_xi_get_client_pointer_cookie_t
8068 xcb_input_xi_get_client_pointer_unchecked (xcb_connection_t *c,
8069 xcb_window_t window);
8070
8071 /**
8072 * Return the reply
8073 * @param c The connection
8074 * @param cookie The cookie
8075 * @param e The xcb_generic_error_t supplied
8076 *
8077 * Returns the reply of the request asked by
8078 *
8079 * The parameter @p e supplied to this function must be NULL if
8080 * xcb_input_xi_get_client_pointer_unchecked(). is used.
8081 * Otherwise, it stores the error if any.
8082 *
8083 * The returned value must be freed by the caller using free().
8084 */
8085 xcb_input_xi_get_client_pointer_reply_t *
8086 xcb_input_xi_get_client_pointer_reply (xcb_connection_t *c,
8087 xcb_input_xi_get_client_pointer_cookie_t cookie /**< */,
8088 xcb_generic_error_t **e);
8089
8090 int
8091 xcb_input_event_mask_sizeof (const void *_buffer);
8092
8093 uint32_t *
8094 xcb_input_event_mask_mask (const xcb_input_event_mask_t *R);
8095
8096 int
8097 xcb_input_event_mask_mask_length (const xcb_input_event_mask_t *R);
8098
8099 xcb_generic_iterator_t
8100 xcb_input_event_mask_mask_end (const xcb_input_event_mask_t *R);
8101
8102 /**
8103 * Get the next element of the iterator
8104 * @param i Pointer to a xcb_input_event_mask_iterator_t
8105 *
8106 * Get the next element in the iterator. The member rem is
8107 * decreased by one. The member data points to the next
8108 * element. The member index is increased by sizeof(xcb_input_event_mask_t)
8109 */
8110 void
8111 xcb_input_event_mask_next (xcb_input_event_mask_iterator_t *i);
8112
8113 /**
8114 * Return the iterator pointing to the last element
8115 * @param i An xcb_input_event_mask_iterator_t
8116 * @return The iterator pointing to the last element
8117 *
8118 * Set the current element in the iterator to the last element.
8119 * The member rem is set to 0. The member data points to the
8120 * last element.
8121 */
8122 xcb_generic_iterator_t
8123 xcb_input_event_mask_end (xcb_input_event_mask_iterator_t i);
8124
8125 int
8126 xcb_input_xi_select_events_sizeof (const void *_buffer);
8127
8128 /**
8129 *
8130 * @param c The connection
8131 * @return A cookie
8132 *
8133 * Delivers a request to the X server.
8134 *
8135 * This form can be used only if the request will not cause
8136 * a reply to be generated. Any returned error will be
8137 * saved for handling by xcb_request_check().
8138 */
8139 xcb_void_cookie_t
8140 xcb_input_xi_select_events_checked (xcb_connection_t *c,
8141 xcb_window_t window,
8142 uint16_t num_mask,
8143 const xcb_input_event_mask_t *masks);
8144
8145 /**
8146 *
8147 * @param c The connection
8148 * @return A cookie
8149 *
8150 * Delivers a request to the X server.
8151 *
8152 */
8153 xcb_void_cookie_t
8154 xcb_input_xi_select_events (xcb_connection_t *c,
8155 xcb_window_t window,
8156 uint16_t num_mask,
8157 const xcb_input_event_mask_t *masks);
8158
8159 int
8160 xcb_input_xi_select_events_masks_length (const xcb_input_xi_select_events_request_t *R);
8161
8162 xcb_input_event_mask_iterator_t
8163 xcb_input_xi_select_events_masks_iterator (const xcb_input_xi_select_events_request_t *R);
8164
8165 /**
8166 *
8167 * @param c The connection
8168 * @return A cookie
8169 *
8170 * Delivers a request to the X server.
8171 *
8172 */
8173 xcb_input_xi_query_version_cookie_t
8174 xcb_input_xi_query_version (xcb_connection_t *c,
8175 uint16_t major_version,
8176 uint16_t minor_version);
8177
8178 /**
8179 *
8180 * @param c The connection
8181 * @return A cookie
8182 *
8183 * Delivers a request to the X server.
8184 *
8185 * This form can be used only if the request will cause
8186 * a reply to be generated. Any returned error will be
8187 * placed in the event queue.
8188 */
8189 xcb_input_xi_query_version_cookie_t
8190 xcb_input_xi_query_version_unchecked (xcb_connection_t *c,
8191 uint16_t major_version,
8192 uint16_t minor_version);
8193
8194 /**
8195 * Return the reply
8196 * @param c The connection
8197 * @param cookie The cookie
8198 * @param e The xcb_generic_error_t supplied
8199 *
8200 * Returns the reply of the request asked by
8201 *
8202 * The parameter @p e supplied to this function must be NULL if
8203 * xcb_input_xi_query_version_unchecked(). is used.
8204 * Otherwise, it stores the error if any.
8205 *
8206 * The returned value must be freed by the caller using free().
8207 */
8208 xcb_input_xi_query_version_reply_t *
8209 xcb_input_xi_query_version_reply (xcb_connection_t *c,
8210 xcb_input_xi_query_version_cookie_t cookie /**< */,
8211 xcb_generic_error_t **e);
8212
8213 int
8214 xcb_input_button_class_sizeof (const void *_buffer);
8215
8216 uint32_t *
8217 xcb_input_button_class_state (const xcb_input_button_class_t *R);
8218
8219 int
8220 xcb_input_button_class_state_length (const xcb_input_button_class_t *R);
8221
8222 xcb_generic_iterator_t
8223 xcb_input_button_class_state_end (const xcb_input_button_class_t *R);
8224
8225 xcb_atom_t *
8226 xcb_input_button_class_labels (const xcb_input_button_class_t *R);
8227
8228 int
8229 xcb_input_button_class_labels_length (const xcb_input_button_class_t *R);
8230
8231 xcb_generic_iterator_t
8232 xcb_input_button_class_labels_end (const xcb_input_button_class_t *R);
8233
8234 /**
8235 * Get the next element of the iterator
8236 * @param i Pointer to a xcb_input_button_class_iterator_t
8237 *
8238 * Get the next element in the iterator. The member rem is
8239 * decreased by one. The member data points to the next
8240 * element. The member index is increased by sizeof(xcb_input_button_class_t)
8241 */
8242 void
8243 xcb_input_button_class_next (xcb_input_button_class_iterator_t *i);
8244
8245 /**
8246 * Return the iterator pointing to the last element
8247 * @param i An xcb_input_button_class_iterator_t
8248 * @return The iterator pointing to the last element
8249 *
8250 * Set the current element in the iterator to the last element.
8251 * The member rem is set to 0. The member data points to the
8252 * last element.
8253 */
8254 xcb_generic_iterator_t
8255 xcb_input_button_class_end (xcb_input_button_class_iterator_t i);
8256
8257 int
8258 xcb_input_key_class_sizeof (const void *_buffer);
8259
8260 uint32_t *
8261 xcb_input_key_class_keys (const xcb_input_key_class_t *R);
8262
8263 int
8264 xcb_input_key_class_keys_length (const xcb_input_key_class_t *R);
8265
8266 xcb_generic_iterator_t
8267 xcb_input_key_class_keys_end (const xcb_input_key_class_t *R);
8268
8269 /**
8270 * Get the next element of the iterator
8271 * @param i Pointer to a xcb_input_key_class_iterator_t
8272 *
8273 * Get the next element in the iterator. The member rem is
8274 * decreased by one. The member data points to the next
8275 * element. The member index is increased by sizeof(xcb_input_key_class_t)
8276 */
8277 void
8278 xcb_input_key_class_next (xcb_input_key_class_iterator_t *i);
8279
8280 /**
8281 * Return the iterator pointing to the last element
8282 * @param i An xcb_input_key_class_iterator_t
8283 * @return The iterator pointing to the last element
8284 *
8285 * Set the current element in the iterator to the last element.
8286 * The member rem is set to 0. The member data points to the
8287 * last element.
8288 */
8289 xcb_generic_iterator_t
8290 xcb_input_key_class_end (xcb_input_key_class_iterator_t i);
8291
8292 /**
8293 * Get the next element of the iterator
8294 * @param i Pointer to a xcb_input_scroll_class_iterator_t
8295 *
8296 * Get the next element in the iterator. The member rem is
8297 * decreased by one. The member data points to the next
8298 * element. The member index is increased by sizeof(xcb_input_scroll_class_t)
8299 */
8300 void
8301 xcb_input_scroll_class_next (xcb_input_scroll_class_iterator_t *i);
8302
8303 /**
8304 * Return the iterator pointing to the last element
8305 * @param i An xcb_input_scroll_class_iterator_t
8306 * @return The iterator pointing to the last element
8307 *
8308 * Set the current element in the iterator to the last element.
8309 * The member rem is set to 0. The member data points to the
8310 * last element.
8311 */
8312 xcb_generic_iterator_t
8313 xcb_input_scroll_class_end (xcb_input_scroll_class_iterator_t i);
8314
8315 /**
8316 * Get the next element of the iterator
8317 * @param i Pointer to a xcb_input_touch_class_iterator_t
8318 *
8319 * Get the next element in the iterator. The member rem is
8320 * decreased by one. The member data points to the next
8321 * element. The member index is increased by sizeof(xcb_input_touch_class_t)
8322 */
8323 void
8324 xcb_input_touch_class_next (xcb_input_touch_class_iterator_t *i);
8325
8326 /**
8327 * Return the iterator pointing to the last element
8328 * @param i An xcb_input_touch_class_iterator_t
8329 * @return The iterator pointing to the last element
8330 *
8331 * Set the current element in the iterator to the last element.
8332 * The member rem is set to 0. The member data points to the
8333 * last element.
8334 */
8335 xcb_generic_iterator_t
8336 xcb_input_touch_class_end (xcb_input_touch_class_iterator_t i);
8337
8338 /**
8339 * Get the next element of the iterator
8340 * @param i Pointer to a xcb_input_gesture_class_iterator_t
8341 *
8342 * Get the next element in the iterator. The member rem is
8343 * decreased by one. The member data points to the next
8344 * element. The member index is increased by sizeof(xcb_input_gesture_class_t)
8345 */
8346 void
8347 xcb_input_gesture_class_next (xcb_input_gesture_class_iterator_t *i);
8348
8349 /**
8350 * Return the iterator pointing to the last element
8351 * @param i An xcb_input_gesture_class_iterator_t
8352 * @return The iterator pointing to the last element
8353 *
8354 * Set the current element in the iterator to the last element.
8355 * The member rem is set to 0. The member data points to the
8356 * last element.
8357 */
8358 xcb_generic_iterator_t
8359 xcb_input_gesture_class_end (xcb_input_gesture_class_iterator_t i);
8360
8361 /**
8362 * Get the next element of the iterator
8363 * @param i Pointer to a xcb_input_valuator_class_iterator_t
8364 *
8365 * Get the next element in the iterator. The member rem is
8366 * decreased by one. The member data points to the next
8367 * element. The member index is increased by sizeof(xcb_input_valuator_class_t)
8368 */
8369 void
8370 xcb_input_valuator_class_next (xcb_input_valuator_class_iterator_t *i);
8371
8372 /**
8373 * Return the iterator pointing to the last element
8374 * @param i An xcb_input_valuator_class_iterator_t
8375 * @return The iterator pointing to the last element
8376 *
8377 * Set the current element in the iterator to the last element.
8378 * The member rem is set to 0. The member data points to the
8379 * last element.
8380 */
8381 xcb_generic_iterator_t
8382 xcb_input_valuator_class_end (xcb_input_valuator_class_iterator_t i);
8383
8384 uint32_t *
8385 xcb_input_device_class_data_key_keys (const xcb_input_device_class_data_t *S);
8386
8387 int
8388 xcb_input_device_class_data_key_keys_length (const xcb_input_device_class_t *R,
8389 const xcb_input_device_class_data_t *S);
8390
8391 xcb_generic_iterator_t
8392 xcb_input_device_class_data_key_keys_end (const xcb_input_device_class_t *R,
8393 const xcb_input_device_class_data_t *S);
8394
8395 uint32_t *
8396 xcb_input_device_class_data_button_state (const xcb_input_device_class_data_t *S);
8397
8398 int
8399 xcb_input_device_class_data_button_state_length (const xcb_input_device_class_t *R,
8400 const xcb_input_device_class_data_t *S);
8401
8402 xcb_generic_iterator_t
8403 xcb_input_device_class_data_button_state_end (const xcb_input_device_class_t *R,
8404 const xcb_input_device_class_data_t *S);
8405
8406 xcb_atom_t *
8407 xcb_input_device_class_data_button_labels (const xcb_input_device_class_data_t *S);
8408
8409 int
8410 xcb_input_device_class_data_button_labels_length (const xcb_input_device_class_t *R,
8411 const xcb_input_device_class_data_t *S);
8412
8413 xcb_generic_iterator_t
8414 xcb_input_device_class_data_button_labels_end (const xcb_input_device_class_t *R,
8415 const xcb_input_device_class_data_t *S);
8416
8417 int
8418 xcb_input_device_class_data_serialize (void **_buffer,
8419 uint16_t type,
8420 const xcb_input_device_class_data_t *_aux);
8421
8422 int
8423 xcb_input_device_class_data_unpack (const void *_buffer,
8424 uint16_t type,
8425 xcb_input_device_class_data_t *_aux);
8426
8427 int
8428 xcb_input_device_class_data_sizeof (const void *_buffer,
8429 uint16_t type);
8430
8431 int
8432 xcb_input_device_class_sizeof (const void *_buffer);
8433
8434 /**
8435 * Get the next element of the iterator
8436 * @param i Pointer to a xcb_input_device_class_iterator_t
8437 *
8438 * Get the next element in the iterator. The member rem is
8439 * decreased by one. The member data points to the next
8440 * element. The member index is increased by sizeof(xcb_input_device_class_t)
8441 */
8442 void
8443 xcb_input_device_class_next (xcb_input_device_class_iterator_t *i);
8444
8445 /**
8446 * Return the iterator pointing to the last element
8447 * @param i An xcb_input_device_class_iterator_t
8448 * @return The iterator pointing to the last element
8449 *
8450 * Set the current element in the iterator to the last element.
8451 * The member rem is set to 0. The member data points to the
8452 * last element.
8453 */
8454 xcb_generic_iterator_t
8455 xcb_input_device_class_end (xcb_input_device_class_iterator_t i);
8456
8457 int
8458 xcb_input_xi_device_info_sizeof (const void *_buffer);
8459
8460 char *
8461 xcb_input_xi_device_info_name (const xcb_input_xi_device_info_t *R);
8462
8463 int
8464 xcb_input_xi_device_info_name_length (const xcb_input_xi_device_info_t *R);
8465
8466 xcb_generic_iterator_t
8467 xcb_input_xi_device_info_name_end (const xcb_input_xi_device_info_t *R);
8468
8469 int
8470 xcb_input_xi_device_info_classes_length (const xcb_input_xi_device_info_t *R);
8471
8472 xcb_input_device_class_iterator_t
8473 xcb_input_xi_device_info_classes_iterator (const xcb_input_xi_device_info_t *R);
8474
8475 /**
8476 * Get the next element of the iterator
8477 * @param i Pointer to a xcb_input_xi_device_info_iterator_t
8478 *
8479 * Get the next element in the iterator. The member rem is
8480 * decreased by one. The member data points to the next
8481 * element. The member index is increased by sizeof(xcb_input_xi_device_info_t)
8482 */
8483 void
8484 xcb_input_xi_device_info_next (xcb_input_xi_device_info_iterator_t *i);
8485
8486 /**
8487 * Return the iterator pointing to the last element
8488 * @param i An xcb_input_xi_device_info_iterator_t
8489 * @return The iterator pointing to the last element
8490 *
8491 * Set the current element in the iterator to the last element.
8492 * The member rem is set to 0. The member data points to the
8493 * last element.
8494 */
8495 xcb_generic_iterator_t
8496 xcb_input_xi_device_info_end (xcb_input_xi_device_info_iterator_t i);
8497
8498 int
8499 xcb_input_xi_query_device_sizeof (const void *_buffer);
8500
8501 /**
8502 *
8503 * @param c The connection
8504 * @return A cookie
8505 *
8506 * Delivers a request to the X server.
8507 *
8508 */
8509 xcb_input_xi_query_device_cookie_t
8510 xcb_input_xi_query_device (xcb_connection_t *c,
8511 xcb_input_device_id_t deviceid);
8512
8513 /**
8514 *
8515 * @param c The connection
8516 * @return A cookie
8517 *
8518 * Delivers a request to the X server.
8519 *
8520 * This form can be used only if the request will cause
8521 * a reply to be generated. Any returned error will be
8522 * placed in the event queue.
8523 */
8524 xcb_input_xi_query_device_cookie_t
8525 xcb_input_xi_query_device_unchecked (xcb_connection_t *c,
8526 xcb_input_device_id_t deviceid);
8527
8528 int
8529 xcb_input_xi_query_device_infos_length (const xcb_input_xi_query_device_reply_t *R);
8530
8531 xcb_input_xi_device_info_iterator_t
8532 xcb_input_xi_query_device_infos_iterator (const xcb_input_xi_query_device_reply_t *R);
8533
8534 /**
8535 * Return the reply
8536 * @param c The connection
8537 * @param cookie The cookie
8538 * @param e The xcb_generic_error_t supplied
8539 *
8540 * Returns the reply of the request asked by
8541 *
8542 * The parameter @p e supplied to this function must be NULL if
8543 * xcb_input_xi_query_device_unchecked(). is used.
8544 * Otherwise, it stores the error if any.
8545 *
8546 * The returned value must be freed by the caller using free().
8547 */
8548 xcb_input_xi_query_device_reply_t *
8549 xcb_input_xi_query_device_reply (xcb_connection_t *c,
8550 xcb_input_xi_query_device_cookie_t cookie /**< */,
8551 xcb_generic_error_t **e);
8552
8553 /**
8554 *
8555 * @param c The connection
8556 * @return A cookie
8557 *
8558 * Delivers a request to the X server.
8559 *
8560 * This form can be used only if the request will not cause
8561 * a reply to be generated. Any returned error will be
8562 * saved for handling by xcb_request_check().
8563 */
8564 xcb_void_cookie_t
8565 xcb_input_xi_set_focus_checked (xcb_connection_t *c,
8566 xcb_window_t window,
8567 xcb_timestamp_t time,
8568 xcb_input_device_id_t deviceid);
8569
8570 /**
8571 *
8572 * @param c The connection
8573 * @return A cookie
8574 *
8575 * Delivers a request to the X server.
8576 *
8577 */
8578 xcb_void_cookie_t
8579 xcb_input_xi_set_focus (xcb_connection_t *c,
8580 xcb_window_t window,
8581 xcb_timestamp_t time,
8582 xcb_input_device_id_t deviceid);
8583
8584 /**
8585 *
8586 * @param c The connection
8587 * @return A cookie
8588 *
8589 * Delivers a request to the X server.
8590 *
8591 */
8592 xcb_input_xi_get_focus_cookie_t
8593 xcb_input_xi_get_focus (xcb_connection_t *c,
8594 xcb_input_device_id_t deviceid);
8595
8596 /**
8597 *
8598 * @param c The connection
8599 * @return A cookie
8600 *
8601 * Delivers a request to the X server.
8602 *
8603 * This form can be used only if the request will cause
8604 * a reply to be generated. Any returned error will be
8605 * placed in the event queue.
8606 */
8607 xcb_input_xi_get_focus_cookie_t
8608 xcb_input_xi_get_focus_unchecked (xcb_connection_t *c,
8609 xcb_input_device_id_t deviceid);
8610
8611 /**
8612 * Return the reply
8613 * @param c The connection
8614 * @param cookie The cookie
8615 * @param e The xcb_generic_error_t supplied
8616 *
8617 * Returns the reply of the request asked by
8618 *
8619 * The parameter @p e supplied to this function must be NULL if
8620 * xcb_input_xi_get_focus_unchecked(). is used.
8621 * Otherwise, it stores the error if any.
8622 *
8623 * The returned value must be freed by the caller using free().
8624 */
8625 xcb_input_xi_get_focus_reply_t *
8626 xcb_input_xi_get_focus_reply (xcb_connection_t *c,
8627 xcb_input_xi_get_focus_cookie_t cookie /**< */,
8628 xcb_generic_error_t **e);
8629
8630 int
8631 xcb_input_xi_grab_device_sizeof (const void *_buffer);
8632
8633 /**
8634 *
8635 * @param c The connection
8636 * @return A cookie
8637 *
8638 * Delivers a request to the X server.
8639 *
8640 */
8641 xcb_input_xi_grab_device_cookie_t
8642 xcb_input_xi_grab_device (xcb_connection_t *c,
8643 xcb_window_t window,
8644 xcb_timestamp_t time,
8645 xcb_cursor_t cursor,
8646 xcb_input_device_id_t deviceid,
8647 uint8_t mode,
8648 uint8_t paired_device_mode,
8649 uint8_t owner_events,
8650 uint16_t mask_len,
8651 const uint32_t *mask);
8652
8653 /**
8654 *
8655 * @param c The connection
8656 * @return A cookie
8657 *
8658 * Delivers a request to the X server.
8659 *
8660 * This form can be used only if the request will cause
8661 * a reply to be generated. Any returned error will be
8662 * placed in the event queue.
8663 */
8664 xcb_input_xi_grab_device_cookie_t
8665 xcb_input_xi_grab_device_unchecked (xcb_connection_t *c,
8666 xcb_window_t window,
8667 xcb_timestamp_t time,
8668 xcb_cursor_t cursor,
8669 xcb_input_device_id_t deviceid,
8670 uint8_t mode,
8671 uint8_t paired_device_mode,
8672 uint8_t owner_events,
8673 uint16_t mask_len,
8674 const uint32_t *mask);
8675
8676 /**
8677 * Return the reply
8678 * @param c The connection
8679 * @param cookie The cookie
8680 * @param e The xcb_generic_error_t supplied
8681 *
8682 * Returns the reply of the request asked by
8683 *
8684 * The parameter @p e supplied to this function must be NULL if
8685 * xcb_input_xi_grab_device_unchecked(). is used.
8686 * Otherwise, it stores the error if any.
8687 *
8688 * The returned value must be freed by the caller using free().
8689 */
8690 xcb_input_xi_grab_device_reply_t *
8691 xcb_input_xi_grab_device_reply (xcb_connection_t *c,
8692 xcb_input_xi_grab_device_cookie_t cookie /**< */,
8693 xcb_generic_error_t **e);
8694
8695 /**
8696 *
8697 * @param c The connection
8698 * @return A cookie
8699 *
8700 * Delivers a request to the X server.
8701 *
8702 * This form can be used only if the request will not cause
8703 * a reply to be generated. Any returned error will be
8704 * saved for handling by xcb_request_check().
8705 */
8706 xcb_void_cookie_t
8707 xcb_input_xi_ungrab_device_checked (xcb_connection_t *c,
8708 xcb_timestamp_t time,
8709 xcb_input_device_id_t deviceid);
8710
8711 /**
8712 *
8713 * @param c The connection
8714 * @return A cookie
8715 *
8716 * Delivers a request to the X server.
8717 *
8718 */
8719 xcb_void_cookie_t
8720 xcb_input_xi_ungrab_device (xcb_connection_t *c,
8721 xcb_timestamp_t time,
8722 xcb_input_device_id_t deviceid);
8723
8724 /**
8725 *
8726 * @param c The connection
8727 * @return A cookie
8728 *
8729 * Delivers a request to the X server.
8730 *
8731 * This form can be used only if the request will not cause
8732 * a reply to be generated. Any returned error will be
8733 * saved for handling by xcb_request_check().
8734 */
8735 xcb_void_cookie_t
8736 xcb_input_xi_allow_events_checked (xcb_connection_t *c,
8737 xcb_timestamp_t time,
8738 xcb_input_device_id_t deviceid,
8739 uint8_t event_mode,
8740 uint32_t touchid,
8741 xcb_window_t grab_window);
8742
8743 /**
8744 *
8745 * @param c The connection
8746 * @return A cookie
8747 *
8748 * Delivers a request to the X server.
8749 *
8750 */
8751 xcb_void_cookie_t
8752 xcb_input_xi_allow_events (xcb_connection_t *c,
8753 xcb_timestamp_t time,
8754 xcb_input_device_id_t deviceid,
8755 uint8_t event_mode,
8756 uint32_t touchid,
8757 xcb_window_t grab_window);
8758
8759 /**
8760 * Get the next element of the iterator
8761 * @param i Pointer to a xcb_input_grab_modifier_info_iterator_t
8762 *
8763 * Get the next element in the iterator. The member rem is
8764 * decreased by one. The member data points to the next
8765 * element. The member index is increased by sizeof(xcb_input_grab_modifier_info_t)
8766 */
8767 void
8768 xcb_input_grab_modifier_info_next (xcb_input_grab_modifier_info_iterator_t *i);
8769
8770 /**
8771 * Return the iterator pointing to the last element
8772 * @param i An xcb_input_grab_modifier_info_iterator_t
8773 * @return The iterator pointing to the last element
8774 *
8775 * Set the current element in the iterator to the last element.
8776 * The member rem is set to 0. The member data points to the
8777 * last element.
8778 */
8779 xcb_generic_iterator_t
8780 xcb_input_grab_modifier_info_end (xcb_input_grab_modifier_info_iterator_t i);
8781
8782 int
8783 xcb_input_xi_passive_grab_device_sizeof (const void *_buffer);
8784
8785 /**
8786 *
8787 * @param c The connection
8788 * @return A cookie
8789 *
8790 * Delivers a request to the X server.
8791 *
8792 */
8793 xcb_input_xi_passive_grab_device_cookie_t
8794 xcb_input_xi_passive_grab_device (xcb_connection_t *c,
8795 xcb_timestamp_t time,
8796 xcb_window_t grab_window,
8797 xcb_cursor_t cursor,
8798 uint32_t detail,
8799 xcb_input_device_id_t deviceid,
8800 uint16_t num_modifiers,
8801 uint16_t mask_len,
8802 uint8_t grab_type,
8803 uint8_t grab_mode,
8804 uint8_t paired_device_mode,
8805 uint8_t owner_events,
8806 const uint32_t *mask,
8807 const uint32_t *modifiers);
8808
8809 /**
8810 *
8811 * @param c The connection
8812 * @return A cookie
8813 *
8814 * Delivers a request to the X server.
8815 *
8816 * This form can be used only if the request will cause
8817 * a reply to be generated. Any returned error will be
8818 * placed in the event queue.
8819 */
8820 xcb_input_xi_passive_grab_device_cookie_t
8821 xcb_input_xi_passive_grab_device_unchecked (xcb_connection_t *c,
8822 xcb_timestamp_t time,
8823 xcb_window_t grab_window,
8824 xcb_cursor_t cursor,
8825 uint32_t detail,
8826 xcb_input_device_id_t deviceid,
8827 uint16_t num_modifiers,
8828 uint16_t mask_len,
8829 uint8_t grab_type,
8830 uint8_t grab_mode,
8831 uint8_t paired_device_mode,
8832 uint8_t owner_events,
8833 const uint32_t *mask,
8834 const uint32_t *modifiers);
8835
8836 xcb_input_grab_modifier_info_t *
8837 xcb_input_xi_passive_grab_device_modifiers (const xcb_input_xi_passive_grab_device_reply_t *R);
8838
8839 int
8840 xcb_input_xi_passive_grab_device_modifiers_length (const xcb_input_xi_passive_grab_device_reply_t *R);
8841
8842 xcb_input_grab_modifier_info_iterator_t
8843 xcb_input_xi_passive_grab_device_modifiers_iterator (const xcb_input_xi_passive_grab_device_reply_t *R);
8844
8845 /**
8846 * Return the reply
8847 * @param c The connection
8848 * @param cookie The cookie
8849 * @param e The xcb_generic_error_t supplied
8850 *
8851 * Returns the reply of the request asked by
8852 *
8853 * The parameter @p e supplied to this function must be NULL if
8854 * xcb_input_xi_passive_grab_device_unchecked(). is used.
8855 * Otherwise, it stores the error if any.
8856 *
8857 * The returned value must be freed by the caller using free().
8858 */
8859 xcb_input_xi_passive_grab_device_reply_t *
8860 xcb_input_xi_passive_grab_device_reply (xcb_connection_t *c,
8861 xcb_input_xi_passive_grab_device_cookie_t cookie /**< */,
8862 xcb_generic_error_t **e);
8863
8864 int
8865 xcb_input_xi_passive_ungrab_device_sizeof (const void *_buffer);
8866
8867 /**
8868 *
8869 * @param c The connection
8870 * @return A cookie
8871 *
8872 * Delivers a request to the X server.
8873 *
8874 * This form can be used only if the request will not cause
8875 * a reply to be generated. Any returned error will be
8876 * saved for handling by xcb_request_check().
8877 */
8878 xcb_void_cookie_t
8879 xcb_input_xi_passive_ungrab_device_checked (xcb_connection_t *c,
8880 xcb_window_t grab_window,
8881 uint32_t detail,
8882 xcb_input_device_id_t deviceid,
8883 uint16_t num_modifiers,
8884 uint8_t grab_type,
8885 const uint32_t *modifiers);
8886
8887 /**
8888 *
8889 * @param c The connection
8890 * @return A cookie
8891 *
8892 * Delivers a request to the X server.
8893 *
8894 */
8895 xcb_void_cookie_t
8896 xcb_input_xi_passive_ungrab_device (xcb_connection_t *c,
8897 xcb_window_t grab_window,
8898 uint32_t detail,
8899 xcb_input_device_id_t deviceid,
8900 uint16_t num_modifiers,
8901 uint8_t grab_type,
8902 const uint32_t *modifiers);
8903
8904 uint32_t *
8905 xcb_input_xi_passive_ungrab_device_modifiers (const xcb_input_xi_passive_ungrab_device_request_t *R);
8906
8907 int
8908 xcb_input_xi_passive_ungrab_device_modifiers_length (const xcb_input_xi_passive_ungrab_device_request_t *R);
8909
8910 xcb_generic_iterator_t
8911 xcb_input_xi_passive_ungrab_device_modifiers_end (const xcb_input_xi_passive_ungrab_device_request_t *R);
8912
8913 int
8914 xcb_input_xi_list_properties_sizeof (const void *_buffer);
8915
8916 /**
8917 *
8918 * @param c The connection
8919 * @return A cookie
8920 *
8921 * Delivers a request to the X server.
8922 *
8923 */
8924 xcb_input_xi_list_properties_cookie_t
8925 xcb_input_xi_list_properties (xcb_connection_t *c,
8926 xcb_input_device_id_t deviceid);
8927
8928 /**
8929 *
8930 * @param c The connection
8931 * @return A cookie
8932 *
8933 * Delivers a request to the X server.
8934 *
8935 * This form can be used only if the request will cause
8936 * a reply to be generated. Any returned error will be
8937 * placed in the event queue.
8938 */
8939 xcb_input_xi_list_properties_cookie_t
8940 xcb_input_xi_list_properties_unchecked (xcb_connection_t *c,
8941 xcb_input_device_id_t deviceid);
8942
8943 xcb_atom_t *
8944 xcb_input_xi_list_properties_properties (const xcb_input_xi_list_properties_reply_t *R);
8945
8946 int
8947 xcb_input_xi_list_properties_properties_length (const xcb_input_xi_list_properties_reply_t *R);
8948
8949 xcb_generic_iterator_t
8950 xcb_input_xi_list_properties_properties_end (const xcb_input_xi_list_properties_reply_t *R);
8951
8952 /**
8953 * Return the reply
8954 * @param c The connection
8955 * @param cookie The cookie
8956 * @param e The xcb_generic_error_t supplied
8957 *
8958 * Returns the reply of the request asked by
8959 *
8960 * The parameter @p e supplied to this function must be NULL if
8961 * xcb_input_xi_list_properties_unchecked(). is used.
8962 * Otherwise, it stores the error if any.
8963 *
8964 * The returned value must be freed by the caller using free().
8965 */
8966 xcb_input_xi_list_properties_reply_t *
8967 xcb_input_xi_list_properties_reply (xcb_connection_t *c,
8968 xcb_input_xi_list_properties_cookie_t cookie /**< */,
8969 xcb_generic_error_t **e);
8970
8971 uint8_t *
8972 xcb_input_xi_change_property_items_data_8 (const xcb_input_xi_change_property_items_t *S);
8973
8974 int
8975 xcb_input_xi_change_property_items_data_8_length (const xcb_input_xi_change_property_request_t *R,
8976 const xcb_input_xi_change_property_items_t *S);
8977
8978 xcb_generic_iterator_t
8979 xcb_input_xi_change_property_items_data_8_end (const xcb_input_xi_change_property_request_t *R,
8980 const xcb_input_xi_change_property_items_t *S);
8981
8982 uint16_t *
8983 xcb_input_xi_change_property_items_data_16 (const xcb_input_xi_change_property_items_t *S);
8984
8985 int
8986 xcb_input_xi_change_property_items_data_16_length (const xcb_input_xi_change_property_request_t *R,
8987 const xcb_input_xi_change_property_items_t *S);
8988
8989 xcb_generic_iterator_t
8990 xcb_input_xi_change_property_items_data_16_end (const xcb_input_xi_change_property_request_t *R,
8991 const xcb_input_xi_change_property_items_t *S);
8992
8993 uint32_t *
8994 xcb_input_xi_change_property_items_data_32 (const xcb_input_xi_change_property_items_t *S);
8995
8996 int
8997 xcb_input_xi_change_property_items_data_32_length (const xcb_input_xi_change_property_request_t *R,
8998 const xcb_input_xi_change_property_items_t *S);
8999
9000 xcb_generic_iterator_t
9001 xcb_input_xi_change_property_items_data_32_end (const xcb_input_xi_change_property_request_t *R,
9002 const xcb_input_xi_change_property_items_t *S);
9003
9004 int
9005 xcb_input_xi_change_property_items_serialize (void **_buffer,
9006 uint32_t num_items,
9007 uint8_t format,
9008 const xcb_input_xi_change_property_items_t *_aux);
9009
9010 int
9011 xcb_input_xi_change_property_items_unpack (const void *_buffer,
9012 uint32_t num_items,
9013 uint8_t format,
9014 xcb_input_xi_change_property_items_t *_aux);
9015
9016 int
9017 xcb_input_xi_change_property_items_sizeof (const void *_buffer,
9018 uint32_t num_items,
9019 uint8_t format);
9020
9021 int
9022 xcb_input_xi_change_property_sizeof (const void *_buffer);
9023
9024 /**
9025 *
9026 * @param c The connection
9027 * @return A cookie
9028 *
9029 * Delivers a request to the X server.
9030 *
9031 * This form can be used only if the request will not cause
9032 * a reply to be generated. Any returned error will be
9033 * saved for handling by xcb_request_check().
9034 */
9035 xcb_void_cookie_t
9036 xcb_input_xi_change_property_checked (xcb_connection_t *c,
9037 xcb_input_device_id_t deviceid,
9038 uint8_t mode,
9039 uint8_t format,
9040 xcb_atom_t property,
9041 xcb_atom_t type,
9042 uint32_t num_items,
9043 const void *items);
9044
9045 /**
9046 *
9047 * @param c The connection
9048 * @return A cookie
9049 *
9050 * Delivers a request to the X server.
9051 *
9052 */
9053 xcb_void_cookie_t
9054 xcb_input_xi_change_property (xcb_connection_t *c,
9055 xcb_input_device_id_t deviceid,
9056 uint8_t mode,
9057 uint8_t format,
9058 xcb_atom_t property,
9059 xcb_atom_t type,
9060 uint32_t num_items,
9061 const void *items);
9062
9063 /**
9064 *
9065 * @param c The connection
9066 * @return A cookie
9067 *
9068 * Delivers a request to the X server.
9069 *
9070 * This form can be used only if the request will not cause
9071 * a reply to be generated. Any returned error will be
9072 * saved for handling by xcb_request_check().
9073 */
9074 xcb_void_cookie_t
9075 xcb_input_xi_change_property_aux_checked (xcb_connection_t *c,
9076 xcb_input_device_id_t deviceid,
9077 uint8_t mode,
9078 uint8_t format,
9079 xcb_atom_t property,
9080 xcb_atom_t type,
9081 uint32_t num_items,
9082 const xcb_input_xi_change_property_items_t *items);
9083
9084 /**
9085 *
9086 * @param c The connection
9087 * @return A cookie
9088 *
9089 * Delivers a request to the X server.
9090 *
9091 */
9092 xcb_void_cookie_t
9093 xcb_input_xi_change_property_aux (xcb_connection_t *c,
9094 xcb_input_device_id_t deviceid,
9095 uint8_t mode,
9096 uint8_t format,
9097 xcb_atom_t property,
9098 xcb_atom_t type,
9099 uint32_t num_items,
9100 const xcb_input_xi_change_property_items_t *items);
9101
9102 void *
9103 xcb_input_xi_change_property_items (const xcb_input_xi_change_property_request_t *R);
9104
9105 /**
9106 *
9107 * @param c The connection
9108 * @return A cookie
9109 *
9110 * Delivers a request to the X server.
9111 *
9112 * This form can be used only if the request will not cause
9113 * a reply to be generated. Any returned error will be
9114 * saved for handling by xcb_request_check().
9115 */
9116 xcb_void_cookie_t
9117 xcb_input_xi_delete_property_checked (xcb_connection_t *c,
9118 xcb_input_device_id_t deviceid,
9119 xcb_atom_t property);
9120
9121 /**
9122 *
9123 * @param c The connection
9124 * @return A cookie
9125 *
9126 * Delivers a request to the X server.
9127 *
9128 */
9129 xcb_void_cookie_t
9130 xcb_input_xi_delete_property (xcb_connection_t *c,
9131 xcb_input_device_id_t deviceid,
9132 xcb_atom_t property);
9133
9134 uint8_t *
9135 xcb_input_xi_get_property_items_data_8 (const xcb_input_xi_get_property_items_t *S);
9136
9137 int
9138 xcb_input_xi_get_property_items_data_8_length (const xcb_input_xi_get_property_reply_t *R,
9139 const xcb_input_xi_get_property_items_t *S);
9140
9141 xcb_generic_iterator_t
9142 xcb_input_xi_get_property_items_data_8_end (const xcb_input_xi_get_property_reply_t *R,
9143 const xcb_input_xi_get_property_items_t *S);
9144
9145 uint16_t *
9146 xcb_input_xi_get_property_items_data_16 (const xcb_input_xi_get_property_items_t *S);
9147
9148 int
9149 xcb_input_xi_get_property_items_data_16_length (const xcb_input_xi_get_property_reply_t *R,
9150 const xcb_input_xi_get_property_items_t *S);
9151
9152 xcb_generic_iterator_t
9153 xcb_input_xi_get_property_items_data_16_end (const xcb_input_xi_get_property_reply_t *R,
9154 const xcb_input_xi_get_property_items_t *S);
9155
9156 uint32_t *
9157 xcb_input_xi_get_property_items_data_32 (const xcb_input_xi_get_property_items_t *S);
9158
9159 int
9160 xcb_input_xi_get_property_items_data_32_length (const xcb_input_xi_get_property_reply_t *R,
9161 const xcb_input_xi_get_property_items_t *S);
9162
9163 xcb_generic_iterator_t
9164 xcb_input_xi_get_property_items_data_32_end (const xcb_input_xi_get_property_reply_t *R,
9165 const xcb_input_xi_get_property_items_t *S);
9166
9167 int
9168 xcb_input_xi_get_property_items_serialize (void **_buffer,
9169 uint32_t num_items,
9170 uint8_t format,
9171 const xcb_input_xi_get_property_items_t *_aux);
9172
9173 int
9174 xcb_input_xi_get_property_items_unpack (const void *_buffer,
9175 uint32_t num_items,
9176 uint8_t format,
9177 xcb_input_xi_get_property_items_t *_aux);
9178
9179 int
9180 xcb_input_xi_get_property_items_sizeof (const void *_buffer,
9181 uint32_t num_items,
9182 uint8_t format);
9183
9184 int
9185 xcb_input_xi_get_property_sizeof (const void *_buffer);
9186
9187 /**
9188 *
9189 * @param c The connection
9190 * @return A cookie
9191 *
9192 * Delivers a request to the X server.
9193 *
9194 */
9195 xcb_input_xi_get_property_cookie_t
9196 xcb_input_xi_get_property (xcb_connection_t *c,
9197 xcb_input_device_id_t deviceid,
9198 uint8_t _delete,
9199 xcb_atom_t property,
9200 xcb_atom_t type,
9201 uint32_t offset,
9202 uint32_t len);
9203
9204 /**
9205 *
9206 * @param c The connection
9207 * @return A cookie
9208 *
9209 * Delivers a request to the X server.
9210 *
9211 * This form can be used only if the request will cause
9212 * a reply to be generated. Any returned error will be
9213 * placed in the event queue.
9214 */
9215 xcb_input_xi_get_property_cookie_t
9216 xcb_input_xi_get_property_unchecked (xcb_connection_t *c,
9217 xcb_input_device_id_t deviceid,
9218 uint8_t _delete,
9219 xcb_atom_t property,
9220 xcb_atom_t type,
9221 uint32_t offset,
9222 uint32_t len);
9223
9224 void *
9225 xcb_input_xi_get_property_items (const xcb_input_xi_get_property_reply_t *R);
9226
9227 /**
9228 * Return the reply
9229 * @param c The connection
9230 * @param cookie The cookie
9231 * @param e The xcb_generic_error_t supplied
9232 *
9233 * Returns the reply of the request asked by
9234 *
9235 * The parameter @p e supplied to this function must be NULL if
9236 * xcb_input_xi_get_property_unchecked(). is used.
9237 * Otherwise, it stores the error if any.
9238 *
9239 * The returned value must be freed by the caller using free().
9240 */
9241 xcb_input_xi_get_property_reply_t *
9242 xcb_input_xi_get_property_reply (xcb_connection_t *c,
9243 xcb_input_xi_get_property_cookie_t cookie /**< */,
9244 xcb_generic_error_t **e);
9245
9246 int
9247 xcb_input_xi_get_selected_events_sizeof (const void *_buffer);
9248
9249 /**
9250 *
9251 * @param c The connection
9252 * @return A cookie
9253 *
9254 * Delivers a request to the X server.
9255 *
9256 */
9257 xcb_input_xi_get_selected_events_cookie_t
9258 xcb_input_xi_get_selected_events (xcb_connection_t *c,
9259 xcb_window_t window);
9260
9261 /**
9262 *
9263 * @param c The connection
9264 * @return A cookie
9265 *
9266 * Delivers a request to the X server.
9267 *
9268 * This form can be used only if the request will cause
9269 * a reply to be generated. Any returned error will be
9270 * placed in the event queue.
9271 */
9272 xcb_input_xi_get_selected_events_cookie_t
9273 xcb_input_xi_get_selected_events_unchecked (xcb_connection_t *c,
9274 xcb_window_t window);
9275
9276 int
9277 xcb_input_xi_get_selected_events_masks_length (const xcb_input_xi_get_selected_events_reply_t *R);
9278
9279 xcb_input_event_mask_iterator_t
9280 xcb_input_xi_get_selected_events_masks_iterator (const xcb_input_xi_get_selected_events_reply_t *R);
9281
9282 /**
9283 * Return the reply
9284 * @param c The connection
9285 * @param cookie The cookie
9286 * @param e The xcb_generic_error_t supplied
9287 *
9288 * Returns the reply of the request asked by
9289 *
9290 * The parameter @p e supplied to this function must be NULL if
9291 * xcb_input_xi_get_selected_events_unchecked(). is used.
9292 * Otherwise, it stores the error if any.
9293 *
9294 * The returned value must be freed by the caller using free().
9295 */
9296 xcb_input_xi_get_selected_events_reply_t *
9297 xcb_input_xi_get_selected_events_reply (xcb_connection_t *c,
9298 xcb_input_xi_get_selected_events_cookie_t cookie /**< */,
9299 xcb_generic_error_t **e);
9300
9301 /**
9302 * Get the next element of the iterator
9303 * @param i Pointer to a xcb_input_barrier_release_pointer_info_iterator_t
9304 *
9305 * Get the next element in the iterator. The member rem is
9306 * decreased by one. The member data points to the next
9307 * element. The member index is increased by sizeof(xcb_input_barrier_release_pointer_info_t)
9308 */
9309 void
9310 xcb_input_barrier_release_pointer_info_next (xcb_input_barrier_release_pointer_info_iterator_t *i);
9311
9312 /**
9313 * Return the iterator pointing to the last element
9314 * @param i An xcb_input_barrier_release_pointer_info_iterator_t
9315 * @return The iterator pointing to the last element
9316 *
9317 * Set the current element in the iterator to the last element.
9318 * The member rem is set to 0. The member data points to the
9319 * last element.
9320 */
9321 xcb_generic_iterator_t
9322 xcb_input_barrier_release_pointer_info_end (xcb_input_barrier_release_pointer_info_iterator_t i);
9323
9324 int
9325 xcb_input_xi_barrier_release_pointer_sizeof (const void *_buffer);
9326
9327 /**
9328 *
9329 * @param c The connection
9330 * @return A cookie
9331 *
9332 * Delivers a request to the X server.
9333 *
9334 * This form can be used only if the request will not cause
9335 * a reply to be generated. Any returned error will be
9336 * saved for handling by xcb_request_check().
9337 */
9338 xcb_void_cookie_t
9339 xcb_input_xi_barrier_release_pointer_checked (xcb_connection_t *c,
9340 uint32_t num_barriers,
9341 const xcb_input_barrier_release_pointer_info_t *barriers);
9342
9343 /**
9344 *
9345 * @param c The connection
9346 * @return A cookie
9347 *
9348 * Delivers a request to the X server.
9349 *
9350 */
9351 xcb_void_cookie_t
9352 xcb_input_xi_barrier_release_pointer (xcb_connection_t *c,
9353 uint32_t num_barriers,
9354 const xcb_input_barrier_release_pointer_info_t *barriers);
9355
9356 xcb_input_barrier_release_pointer_info_t *
9357 xcb_input_xi_barrier_release_pointer_barriers (const xcb_input_xi_barrier_release_pointer_request_t *R);
9358
9359 int
9360 xcb_input_xi_barrier_release_pointer_barriers_length (const xcb_input_xi_barrier_release_pointer_request_t *R);
9361
9362 xcb_input_barrier_release_pointer_info_iterator_t
9363 xcb_input_xi_barrier_release_pointer_barriers_iterator (const xcb_input_xi_barrier_release_pointer_request_t *R);
9364
9365 int
9366 xcb_input_device_changed_sizeof (const void *_buffer);
9367
9368 int
9369 xcb_input_device_changed_classes_length (const xcb_input_device_changed_event_t *R);
9370
9371 xcb_input_device_class_iterator_t
9372 xcb_input_device_changed_classes_iterator (const xcb_input_device_changed_event_t *R);
9373
9374 int
9375 xcb_input_key_press_sizeof (const void *_buffer);
9376
9377 uint32_t *
9378 xcb_input_key_press_button_mask (const xcb_input_key_press_event_t *R);
9379
9380 int
9381 xcb_input_key_press_button_mask_length (const xcb_input_key_press_event_t *R);
9382
9383 xcb_generic_iterator_t
9384 xcb_input_key_press_button_mask_end (const xcb_input_key_press_event_t *R);
9385
9386 uint32_t *
9387 xcb_input_key_press_valuator_mask (const xcb_input_key_press_event_t *R);
9388
9389 int
9390 xcb_input_key_press_valuator_mask_length (const xcb_input_key_press_event_t *R);
9391
9392 xcb_generic_iterator_t
9393 xcb_input_key_press_valuator_mask_end (const xcb_input_key_press_event_t *R);
9394
9395 xcb_input_fp3232_t *
9396 xcb_input_key_press_axisvalues (const xcb_input_key_press_event_t *R);
9397
9398 int
9399 xcb_input_key_press_axisvalues_length (const xcb_input_key_press_event_t *R);
9400
9401 xcb_input_fp3232_iterator_t
9402 xcb_input_key_press_axisvalues_iterator (const xcb_input_key_press_event_t *R);
9403
9404 int
9405 xcb_input_key_release_sizeof (const void *_buffer /**< */);
9406
9407 int
9408 xcb_input_button_press_sizeof (const void *_buffer);
9409
9410 uint32_t *
9411 xcb_input_button_press_button_mask (const xcb_input_button_press_event_t *R);
9412
9413 int
9414 xcb_input_button_press_button_mask_length (const xcb_input_button_press_event_t *R);
9415
9416 xcb_generic_iterator_t
9417 xcb_input_button_press_button_mask_end (const xcb_input_button_press_event_t *R);
9418
9419 uint32_t *
9420 xcb_input_button_press_valuator_mask (const xcb_input_button_press_event_t *R);
9421
9422 int
9423 xcb_input_button_press_valuator_mask_length (const xcb_input_button_press_event_t *R);
9424
9425 xcb_generic_iterator_t
9426 xcb_input_button_press_valuator_mask_end (const xcb_input_button_press_event_t *R);
9427
9428 xcb_input_fp3232_t *
9429 xcb_input_button_press_axisvalues (const xcb_input_button_press_event_t *R);
9430
9431 int
9432 xcb_input_button_press_axisvalues_length (const xcb_input_button_press_event_t *R);
9433
9434 xcb_input_fp3232_iterator_t
9435 xcb_input_button_press_axisvalues_iterator (const xcb_input_button_press_event_t *R);
9436
9437 int
9438 xcb_input_button_release_sizeof (const void *_buffer /**< */);
9439
9440 int
9441 xcb_input_motion_sizeof (const void *_buffer /**< */);
9442
9443 int
9444 xcb_input_enter_sizeof (const void *_buffer);
9445
9446 uint32_t *
9447 xcb_input_enter_buttons (const xcb_input_enter_event_t *R);
9448
9449 int
9450 xcb_input_enter_buttons_length (const xcb_input_enter_event_t *R);
9451
9452 xcb_generic_iterator_t
9453 xcb_input_enter_buttons_end (const xcb_input_enter_event_t *R);
9454
9455 int
9456 xcb_input_leave_sizeof (const void *_buffer /**< */);
9457
9458 int
9459 xcb_input_focus_in_sizeof (const void *_buffer /**< */);
9460
9461 int
9462 xcb_input_focus_out_sizeof (const void *_buffer /**< */);
9463
9464 /**
9465 * Get the next element of the iterator
9466 * @param i Pointer to a xcb_input_hierarchy_info_iterator_t
9467 *
9468 * Get the next element in the iterator. The member rem is
9469 * decreased by one. The member data points to the next
9470 * element. The member index is increased by sizeof(xcb_input_hierarchy_info_t)
9471 */
9472 void
9473 xcb_input_hierarchy_info_next (xcb_input_hierarchy_info_iterator_t *i);
9474
9475 /**
9476 * Return the iterator pointing to the last element
9477 * @param i An xcb_input_hierarchy_info_iterator_t
9478 * @return The iterator pointing to the last element
9479 *
9480 * Set the current element in the iterator to the last element.
9481 * The member rem is set to 0. The member data points to the
9482 * last element.
9483 */
9484 xcb_generic_iterator_t
9485 xcb_input_hierarchy_info_end (xcb_input_hierarchy_info_iterator_t i);
9486
9487 int
9488 xcb_input_hierarchy_sizeof (const void *_buffer);
9489
9490 xcb_input_hierarchy_info_t *
9491 xcb_input_hierarchy_infos (const xcb_input_hierarchy_event_t *R);
9492
9493 int
9494 xcb_input_hierarchy_infos_length (const xcb_input_hierarchy_event_t *R);
9495
9496 xcb_input_hierarchy_info_iterator_t
9497 xcb_input_hierarchy_infos_iterator (const xcb_input_hierarchy_event_t *R);
9498
9499 int
9500 xcb_input_raw_key_press_sizeof (const void *_buffer);
9501
9502 uint32_t *
9503 xcb_input_raw_key_press_valuator_mask (const xcb_input_raw_key_press_event_t *R);
9504
9505 int
9506 xcb_input_raw_key_press_valuator_mask_length (const xcb_input_raw_key_press_event_t *R);
9507
9508 xcb_generic_iterator_t
9509 xcb_input_raw_key_press_valuator_mask_end (const xcb_input_raw_key_press_event_t *R);
9510
9511 xcb_input_fp3232_t *
9512 xcb_input_raw_key_press_axisvalues (const xcb_input_raw_key_press_event_t *R);
9513
9514 int
9515 xcb_input_raw_key_press_axisvalues_length (const xcb_input_raw_key_press_event_t *R);
9516
9517 xcb_input_fp3232_iterator_t
9518 xcb_input_raw_key_press_axisvalues_iterator (const xcb_input_raw_key_press_event_t *R);
9519
9520 xcb_input_fp3232_t *
9521 xcb_input_raw_key_press_axisvalues_raw (const xcb_input_raw_key_press_event_t *R);
9522
9523 int
9524 xcb_input_raw_key_press_axisvalues_raw_length (const xcb_input_raw_key_press_event_t *R);
9525
9526 xcb_input_fp3232_iterator_t
9527 xcb_input_raw_key_press_axisvalues_raw_iterator (const xcb_input_raw_key_press_event_t *R);
9528
9529 int
9530 xcb_input_raw_key_release_sizeof (const void *_buffer /**< */);
9531
9532 int
9533 xcb_input_raw_button_press_sizeof (const void *_buffer);
9534
9535 uint32_t *
9536 xcb_input_raw_button_press_valuator_mask (const xcb_input_raw_button_press_event_t *R);
9537
9538 int
9539 xcb_input_raw_button_press_valuator_mask_length (const xcb_input_raw_button_press_event_t *R);
9540
9541 xcb_generic_iterator_t
9542 xcb_input_raw_button_press_valuator_mask_end (const xcb_input_raw_button_press_event_t *R);
9543
9544 xcb_input_fp3232_t *
9545 xcb_input_raw_button_press_axisvalues (const xcb_input_raw_button_press_event_t *R);
9546
9547 int
9548 xcb_input_raw_button_press_axisvalues_length (const xcb_input_raw_button_press_event_t *R);
9549
9550 xcb_input_fp3232_iterator_t
9551 xcb_input_raw_button_press_axisvalues_iterator (const xcb_input_raw_button_press_event_t *R);
9552
9553 xcb_input_fp3232_t *
9554 xcb_input_raw_button_press_axisvalues_raw (const xcb_input_raw_button_press_event_t *R);
9555
9556 int
9557 xcb_input_raw_button_press_axisvalues_raw_length (const xcb_input_raw_button_press_event_t *R);
9558
9559 xcb_input_fp3232_iterator_t
9560 xcb_input_raw_button_press_axisvalues_raw_iterator (const xcb_input_raw_button_press_event_t *R);
9561
9562 int
9563 xcb_input_raw_button_release_sizeof (const void *_buffer /**< */);
9564
9565 int
9566 xcb_input_raw_motion_sizeof (const void *_buffer /**< */);
9567
9568 int
9569 xcb_input_touch_begin_sizeof (const void *_buffer);
9570
9571 uint32_t *
9572 xcb_input_touch_begin_button_mask (const xcb_input_touch_begin_event_t *R);
9573
9574 int
9575 xcb_input_touch_begin_button_mask_length (const xcb_input_touch_begin_event_t *R);
9576
9577 xcb_generic_iterator_t
9578 xcb_input_touch_begin_button_mask_end (const xcb_input_touch_begin_event_t *R);
9579
9580 uint32_t *
9581 xcb_input_touch_begin_valuator_mask (const xcb_input_touch_begin_event_t *R);
9582
9583 int
9584 xcb_input_touch_begin_valuator_mask_length (const xcb_input_touch_begin_event_t *R);
9585
9586 xcb_generic_iterator_t
9587 xcb_input_touch_begin_valuator_mask_end (const xcb_input_touch_begin_event_t *R);
9588
9589 xcb_input_fp3232_t *
9590 xcb_input_touch_begin_axisvalues (const xcb_input_touch_begin_event_t *R);
9591
9592 int
9593 xcb_input_touch_begin_axisvalues_length (const xcb_input_touch_begin_event_t *R);
9594
9595 xcb_input_fp3232_iterator_t
9596 xcb_input_touch_begin_axisvalues_iterator (const xcb_input_touch_begin_event_t *R);
9597
9598 int
9599 xcb_input_touch_update_sizeof (const void *_buffer /**< */);
9600
9601 int
9602 xcb_input_touch_end_sizeof (const void *_buffer /**< */);
9603
9604 int
9605 xcb_input_raw_touch_begin_sizeof (const void *_buffer);
9606
9607 uint32_t *
9608 xcb_input_raw_touch_begin_valuator_mask (const xcb_input_raw_touch_begin_event_t *R);
9609
9610 int
9611 xcb_input_raw_touch_begin_valuator_mask_length (const xcb_input_raw_touch_begin_event_t *R);
9612
9613 xcb_generic_iterator_t
9614 xcb_input_raw_touch_begin_valuator_mask_end (const xcb_input_raw_touch_begin_event_t *R);
9615
9616 xcb_input_fp3232_t *
9617 xcb_input_raw_touch_begin_axisvalues (const xcb_input_raw_touch_begin_event_t *R);
9618
9619 int
9620 xcb_input_raw_touch_begin_axisvalues_length (const xcb_input_raw_touch_begin_event_t *R);
9621
9622 xcb_input_fp3232_iterator_t
9623 xcb_input_raw_touch_begin_axisvalues_iterator (const xcb_input_raw_touch_begin_event_t *R);
9624
9625 xcb_input_fp3232_t *
9626 xcb_input_raw_touch_begin_axisvalues_raw (const xcb_input_raw_touch_begin_event_t *R);
9627
9628 int
9629 xcb_input_raw_touch_begin_axisvalues_raw_length (const xcb_input_raw_touch_begin_event_t *R);
9630
9631 xcb_input_fp3232_iterator_t
9632 xcb_input_raw_touch_begin_axisvalues_raw_iterator (const xcb_input_raw_touch_begin_event_t *R);
9633
9634 int
9635 xcb_input_raw_touch_update_sizeof (const void *_buffer /**< */);
9636
9637 int
9638 xcb_input_raw_touch_end_sizeof (const void *_buffer /**< */);
9639
9640 /**
9641 * Get the next element of the iterator
9642 * @param i Pointer to a xcb_input_event_for_send_iterator_t
9643 *
9644 * Get the next element in the iterator. The member rem is
9645 * decreased by one. The member data points to the next
9646 * element. The member index is increased by sizeof(xcb_input_event_for_send_t)
9647 */
9648 void
9649 xcb_input_event_for_send_next (xcb_input_event_for_send_iterator_t *i);
9650
9651 /**
9652 * Return the iterator pointing to the last element
9653 * @param i An xcb_input_event_for_send_iterator_t
9654 * @return The iterator pointing to the last element
9655 *
9656 * Set the current element in the iterator to the last element.
9657 * The member rem is set to 0. The member data points to the
9658 * last element.
9659 */
9660 xcb_generic_iterator_t
9661 xcb_input_event_for_send_end (xcb_input_event_for_send_iterator_t i);
9662
9663 int
9664 xcb_input_send_extension_event_sizeof (const void *_buffer);
9665
9666 /**
9667 *
9668 * @param c The connection
9669 * @return A cookie
9670 *
9671 * Delivers a request to the X server.
9672 *
9673 * This form can be used only if the request will not cause
9674 * a reply to be generated. Any returned error will be
9675 * saved for handling by xcb_request_check().
9676 */
9677 xcb_void_cookie_t
9678 xcb_input_send_extension_event_checked (xcb_connection_t *c,
9679 xcb_window_t destination,
9680 uint8_t device_id,
9681 uint8_t propagate,
9682 uint16_t num_classes,
9683 uint8_t num_events,
9684 const xcb_input_event_for_send_t *events,
9685 const xcb_input_event_class_t *classes);
9686
9687 /**
9688 *
9689 * @param c The connection
9690 * @return A cookie
9691 *
9692 * Delivers a request to the X server.
9693 *
9694 */
9695 xcb_void_cookie_t
9696 xcb_input_send_extension_event (xcb_connection_t *c,
9697 xcb_window_t destination,
9698 uint8_t device_id,
9699 uint8_t propagate,
9700 uint16_t num_classes,
9701 uint8_t num_events,
9702 const xcb_input_event_for_send_t *events,
9703 const xcb_input_event_class_t *classes);
9704
9705 xcb_input_event_for_send_t *
9706 xcb_input_send_extension_event_events (const xcb_input_send_extension_event_request_t *R);
9707
9708 int
9709 xcb_input_send_extension_event_events_length (const xcb_input_send_extension_event_request_t *R);
9710
9711 xcb_input_event_for_send_iterator_t
9712 xcb_input_send_extension_event_events_iterator (const xcb_input_send_extension_event_request_t *R);
9713
9714 xcb_input_event_class_t *
9715 xcb_input_send_extension_event_classes (const xcb_input_send_extension_event_request_t *R);
9716
9717 int
9718 xcb_input_send_extension_event_classes_length (const xcb_input_send_extension_event_request_t *R);
9719
9720 xcb_generic_iterator_t
9721 xcb_input_send_extension_event_classes_end (const xcb_input_send_extension_event_request_t *R);
9722
9723
9724 #ifdef __cplusplus
9725 }
9726 #endif
9727
9728 #endif
9729
9730 /**
9731 * @}
9732 */