1 /* 2 * This file generated automatically from xfixes.xml by c_client.py. 3 * Edit at your peril. 4 */ 5 6 /** 7 * @defgroup XCB_XFixes_API XCB XFixes API 8 * @brief XFixes XCB Protocol Implementation. 9 * @{ 10 **/ 11 12 #ifndef __XFIXES_H 13 #define __XFIXES_H 14 15 #include "xcb.h" 16 #include "xproto.h" 17 #include "render.h" 18 #include "shape.h" 19 20 #ifdef __cplusplus 21 extern "C" { 22 #endif 23 24 #define XCB_XFIXES_MAJOR_VERSION 6 25 #define XCB_XFIXES_MINOR_VERSION 0 26 27 extern xcb_extension_t xcb_xfixes_id; 28 29 /** 30 * @brief xcb_xfixes_query_version_cookie_t 31 **/ 32 typedef struct xcb_xfixes_query_version_cookie_t { 33 unsigned int sequence; 34 } xcb_xfixes_query_version_cookie_t; 35 36 /** Opcode for xcb_xfixes_query_version. */ 37 #define XCB_XFIXES_QUERY_VERSION 0 38 39 /** 40 * @brief xcb_xfixes_query_version_request_t 41 **/ 42 typedef struct xcb_xfixes_query_version_request_t { 43 uint8_t major_opcode; 44 uint8_t minor_opcode; 45 uint16_t length; 46 uint32_t client_major_version; 47 uint32_t client_minor_version; 48 } xcb_xfixes_query_version_request_t; 49 50 /** 51 * @brief xcb_xfixes_query_version_reply_t 52 **/ 53 typedef struct xcb_xfixes_query_version_reply_t { 54 uint8_t response_type; 55 uint8_t pad0; 56 uint16_t sequence; 57 uint32_t length; 58 uint32_t major_version; 59 uint32_t minor_version; 60 uint8_t pad1[16]; 61 } xcb_xfixes_query_version_reply_t; 62 63 typedef enum xcb_xfixes_save_set_mode_t { 64 XCB_XFIXES_SAVE_SET_MODE_INSERT = 0, 65 XCB_XFIXES_SAVE_SET_MODE_DELETE = 1 66 } xcb_xfixes_save_set_mode_t; 67 68 typedef enum xcb_xfixes_save_set_target_t { 69 XCB_XFIXES_SAVE_SET_TARGET_NEAREST = 0, 70 XCB_XFIXES_SAVE_SET_TARGET_ROOT = 1 71 } xcb_xfixes_save_set_target_t; 72 73 typedef enum xcb_xfixes_save_set_mapping_t { 74 XCB_XFIXES_SAVE_SET_MAPPING_MAP = 0, 75 XCB_XFIXES_SAVE_SET_MAPPING_UNMAP = 1 76 } xcb_xfixes_save_set_mapping_t; 77 78 /** Opcode for xcb_xfixes_change_save_set. */ 79 #define XCB_XFIXES_CHANGE_SAVE_SET 1 80 81 /** 82 * @brief xcb_xfixes_change_save_set_request_t 83 **/ 84 typedef struct xcb_xfixes_change_save_set_request_t { 85 uint8_t major_opcode; 86 uint8_t minor_opcode; 87 uint16_t length; 88 uint8_t mode; 89 uint8_t target; 90 uint8_t map; 91 uint8_t pad0; 92 xcb_window_t window; 93 } xcb_xfixes_change_save_set_request_t; 94 95 typedef enum xcb_xfixes_selection_event_t { 96 XCB_XFIXES_SELECTION_EVENT_SET_SELECTION_OWNER = 0, 97 XCB_XFIXES_SELECTION_EVENT_SELECTION_WINDOW_DESTROY = 1, 98 XCB_XFIXES_SELECTION_EVENT_SELECTION_CLIENT_CLOSE = 2 99 } xcb_xfixes_selection_event_t; 100 101 typedef enum xcb_xfixes_selection_event_mask_t { 102 XCB_XFIXES_SELECTION_EVENT_MASK_SET_SELECTION_OWNER = 1, 103 XCB_XFIXES_SELECTION_EVENT_MASK_SELECTION_WINDOW_DESTROY = 2, 104 XCB_XFIXES_SELECTION_EVENT_MASK_SELECTION_CLIENT_CLOSE = 4 105 } xcb_xfixes_selection_event_mask_t; 106 107 /** Opcode for xcb_xfixes_selection_notify. */ 108 #define XCB_XFIXES_SELECTION_NOTIFY 0 109 110 /** 111 * @brief xcb_xfixes_selection_notify_event_t 112 **/ 113 typedef struct xcb_xfixes_selection_notify_event_t { 114 uint8_t response_type; 115 uint8_t subtype; 116 uint16_t sequence; 117 xcb_window_t window; 118 xcb_window_t owner; 119 xcb_atom_t selection; 120 xcb_timestamp_t timestamp; 121 xcb_timestamp_t selection_timestamp; 122 uint8_t pad0[8]; 123 } xcb_xfixes_selection_notify_event_t; 124 125 /** Opcode for xcb_xfixes_select_selection_input. */ 126 #define XCB_XFIXES_SELECT_SELECTION_INPUT 2 127 128 /** 129 * @brief xcb_xfixes_select_selection_input_request_t 130 **/ 131 typedef struct xcb_xfixes_select_selection_input_request_t { 132 uint8_t major_opcode; 133 uint8_t minor_opcode; 134 uint16_t length; 135 xcb_window_t window; 136 xcb_atom_t selection; 137 uint32_t event_mask; 138 } xcb_xfixes_select_selection_input_request_t; 139 140 typedef enum xcb_xfixes_cursor_notify_t { 141 XCB_XFIXES_CURSOR_NOTIFY_DISPLAY_CURSOR = 0 142 } xcb_xfixes_cursor_notify_t; 143 144 typedef enum xcb_xfixes_cursor_notify_mask_t { 145 XCB_XFIXES_CURSOR_NOTIFY_MASK_DISPLAY_CURSOR = 1 146 } xcb_xfixes_cursor_notify_mask_t; 147 148 /** Opcode for xcb_xfixes_cursor_notify. */ 149 #define XCB_XFIXES_CURSOR_NOTIFY 1 150 151 /** 152 * @brief xcb_xfixes_cursor_notify_event_t 153 **/ 154 typedef struct xcb_xfixes_cursor_notify_event_t { 155 uint8_t response_type; 156 uint8_t subtype; 157 uint16_t sequence; 158 xcb_window_t window; 159 uint32_t cursor_serial; 160 xcb_timestamp_t timestamp; 161 xcb_atom_t name; 162 uint8_t pad0[12]; 163 } xcb_xfixes_cursor_notify_event_t; 164 165 /** Opcode for xcb_xfixes_select_cursor_input. */ 166 #define XCB_XFIXES_SELECT_CURSOR_INPUT 3 167 168 /** 169 * @brief xcb_xfixes_select_cursor_input_request_t 170 **/ 171 typedef struct xcb_xfixes_select_cursor_input_request_t { 172 uint8_t major_opcode; 173 uint8_t minor_opcode; 174 uint16_t length; 175 xcb_window_t window; 176 uint32_t event_mask; 177 } xcb_xfixes_select_cursor_input_request_t; 178 179 /** 180 * @brief xcb_xfixes_get_cursor_image_cookie_t 181 **/ 182 typedef struct xcb_xfixes_get_cursor_image_cookie_t { 183 unsigned int sequence; 184 } xcb_xfixes_get_cursor_image_cookie_t; 185 186 /** Opcode for xcb_xfixes_get_cursor_image. */ 187 #define XCB_XFIXES_GET_CURSOR_IMAGE 4 188 189 /** 190 * @brief xcb_xfixes_get_cursor_image_request_t 191 **/ 192 typedef struct xcb_xfixes_get_cursor_image_request_t { 193 uint8_t major_opcode; 194 uint8_t minor_opcode; 195 uint16_t length; 196 } xcb_xfixes_get_cursor_image_request_t; 197 198 /** 199 * @brief xcb_xfixes_get_cursor_image_reply_t 200 **/ 201 typedef struct xcb_xfixes_get_cursor_image_reply_t { 202 uint8_t response_type; 203 uint8_t pad0; 204 uint16_t sequence; 205 uint32_t length; 206 int16_t x; 207 int16_t y; 208 uint16_t width; 209 uint16_t height; 210 uint16_t xhot; 211 uint16_t yhot; 212 uint32_t cursor_serial; 213 uint8_t pad1[8]; 214 } xcb_xfixes_get_cursor_image_reply_t; 215 216 typedef uint32_t xcb_xfixes_region_t; 217 218 /** 219 * @brief xcb_xfixes_region_iterator_t 220 **/ 221 typedef struct xcb_xfixes_region_iterator_t { 222 xcb_xfixes_region_t *data; 223 int rem; 224 int index; 225 } xcb_xfixes_region_iterator_t; 226 227 /** Opcode for xcb_xfixes_bad_region. */ 228 #define XCB_XFIXES_BAD_REGION 0 229 230 /** 231 * @brief xcb_xfixes_bad_region_error_t 232 **/ 233 typedef struct xcb_xfixes_bad_region_error_t { 234 uint8_t response_type; 235 uint8_t error_code; 236 uint16_t sequence; 237 uint32_t bad_value; 238 uint16_t minor_opcode; 239 uint8_t major_opcode; 240 } xcb_xfixes_bad_region_error_t; 241 242 typedef enum xcb_xfixes_region_enum_t { 243 XCB_XFIXES_REGION_NONE = 0 244 } xcb_xfixes_region_enum_t; 245 246 /** Opcode for xcb_xfixes_create_region. */ 247 #define XCB_XFIXES_CREATE_REGION 5 248 249 /** 250 * @brief xcb_xfixes_create_region_request_t 251 **/ 252 typedef struct xcb_xfixes_create_region_request_t { 253 uint8_t major_opcode; 254 uint8_t minor_opcode; 255 uint16_t length; 256 xcb_xfixes_region_t region; 257 } xcb_xfixes_create_region_request_t; 258 259 /** Opcode for xcb_xfixes_create_region_from_bitmap. */ 260 #define XCB_XFIXES_CREATE_REGION_FROM_BITMAP 6 261 262 /** 263 * @brief xcb_xfixes_create_region_from_bitmap_request_t 264 **/ 265 typedef struct xcb_xfixes_create_region_from_bitmap_request_t { 266 uint8_t major_opcode; 267 uint8_t minor_opcode; 268 uint16_t length; 269 xcb_xfixes_region_t region; 270 xcb_pixmap_t bitmap; 271 } xcb_xfixes_create_region_from_bitmap_request_t; 272 273 /** Opcode for xcb_xfixes_create_region_from_window. */ 274 #define XCB_XFIXES_CREATE_REGION_FROM_WINDOW 7 275 276 /** 277 * @brief xcb_xfixes_create_region_from_window_request_t 278 **/ 279 typedef struct xcb_xfixes_create_region_from_window_request_t { 280 uint8_t major_opcode; 281 uint8_t minor_opcode; 282 uint16_t length; 283 xcb_xfixes_region_t region; 284 xcb_window_t window; 285 xcb_shape_kind_t kind; 286 uint8_t pad0[3]; 287 } xcb_xfixes_create_region_from_window_request_t; 288 289 /** Opcode for xcb_xfixes_create_region_from_gc. */ 290 #define XCB_XFIXES_CREATE_REGION_FROM_GC 8 291 292 /** 293 * @brief xcb_xfixes_create_region_from_gc_request_t 294 **/ 295 typedef struct xcb_xfixes_create_region_from_gc_request_t { 296 uint8_t major_opcode; 297 uint8_t minor_opcode; 298 uint16_t length; 299 xcb_xfixes_region_t region; 300 xcb_gcontext_t gc; 301 } xcb_xfixes_create_region_from_gc_request_t; 302 303 /** Opcode for xcb_xfixes_create_region_from_picture. */ 304 #define XCB_XFIXES_CREATE_REGION_FROM_PICTURE 9 305 306 /** 307 * @brief xcb_xfixes_create_region_from_picture_request_t 308 **/ 309 typedef struct xcb_xfixes_create_region_from_picture_request_t { 310 uint8_t major_opcode; 311 uint8_t minor_opcode; 312 uint16_t length; 313 xcb_xfixes_region_t region; 314 xcb_render_picture_t picture; 315 } xcb_xfixes_create_region_from_picture_request_t; 316 317 /** Opcode for xcb_xfixes_destroy_region. */ 318 #define XCB_XFIXES_DESTROY_REGION 10 319 320 /** 321 * @brief xcb_xfixes_destroy_region_request_t 322 **/ 323 typedef struct xcb_xfixes_destroy_region_request_t { 324 uint8_t major_opcode; 325 uint8_t minor_opcode; 326 uint16_t length; 327 xcb_xfixes_region_t region; 328 } xcb_xfixes_destroy_region_request_t; 329 330 /** Opcode for xcb_xfixes_set_region. */ 331 #define XCB_XFIXES_SET_REGION 11 332 333 /** 334 * @brief xcb_xfixes_set_region_request_t 335 **/ 336 typedef struct xcb_xfixes_set_region_request_t { 337 uint8_t major_opcode; 338 uint8_t minor_opcode; 339 uint16_t length; 340 xcb_xfixes_region_t region; 341 } xcb_xfixes_set_region_request_t; 342 343 /** Opcode for xcb_xfixes_copy_region. */ 344 #define XCB_XFIXES_COPY_REGION 12 345 346 /** 347 * @brief xcb_xfixes_copy_region_request_t 348 **/ 349 typedef struct xcb_xfixes_copy_region_request_t { 350 uint8_t major_opcode; 351 uint8_t minor_opcode; 352 uint16_t length; 353 xcb_xfixes_region_t source; 354 xcb_xfixes_region_t destination; 355 } xcb_xfixes_copy_region_request_t; 356 357 /** Opcode for xcb_xfixes_union_region. */ 358 #define XCB_XFIXES_UNION_REGION 13 359 360 /** 361 * @brief xcb_xfixes_union_region_request_t 362 **/ 363 typedef struct xcb_xfixes_union_region_request_t { 364 uint8_t major_opcode; 365 uint8_t minor_opcode; 366 uint16_t length; 367 xcb_xfixes_region_t source1; 368 xcb_xfixes_region_t source2; 369 xcb_xfixes_region_t destination; 370 } xcb_xfixes_union_region_request_t; 371 372 /** Opcode for xcb_xfixes_intersect_region. */ 373 #define XCB_XFIXES_INTERSECT_REGION 14 374 375 /** 376 * @brief xcb_xfixes_intersect_region_request_t 377 **/ 378 typedef struct xcb_xfixes_intersect_region_request_t { 379 uint8_t major_opcode; 380 uint8_t minor_opcode; 381 uint16_t length; 382 xcb_xfixes_region_t source1; 383 xcb_xfixes_region_t source2; 384 xcb_xfixes_region_t destination; 385 } xcb_xfixes_intersect_region_request_t; 386 387 /** Opcode for xcb_xfixes_subtract_region. */ 388 #define XCB_XFIXES_SUBTRACT_REGION 15 389 390 /** 391 * @brief xcb_xfixes_subtract_region_request_t 392 **/ 393 typedef struct xcb_xfixes_subtract_region_request_t { 394 uint8_t major_opcode; 395 uint8_t minor_opcode; 396 uint16_t length; 397 xcb_xfixes_region_t source1; 398 xcb_xfixes_region_t source2; 399 xcb_xfixes_region_t destination; 400 } xcb_xfixes_subtract_region_request_t; 401 402 /** Opcode for xcb_xfixes_invert_region. */ 403 #define XCB_XFIXES_INVERT_REGION 16 404 405 /** 406 * @brief xcb_xfixes_invert_region_request_t 407 **/ 408 typedef struct xcb_xfixes_invert_region_request_t { 409 uint8_t major_opcode; 410 uint8_t minor_opcode; 411 uint16_t length; 412 xcb_xfixes_region_t source; 413 xcb_rectangle_t bounds; 414 xcb_xfixes_region_t destination; 415 } xcb_xfixes_invert_region_request_t; 416 417 /** Opcode for xcb_xfixes_translate_region. */ 418 #define XCB_XFIXES_TRANSLATE_REGION 17 419 420 /** 421 * @brief xcb_xfixes_translate_region_request_t 422 **/ 423 typedef struct xcb_xfixes_translate_region_request_t { 424 uint8_t major_opcode; 425 uint8_t minor_opcode; 426 uint16_t length; 427 xcb_xfixes_region_t region; 428 int16_t dx; 429 int16_t dy; 430 } xcb_xfixes_translate_region_request_t; 431 432 /** Opcode for xcb_xfixes_region_extents. */ 433 #define XCB_XFIXES_REGION_EXTENTS 18 434 435 /** 436 * @brief xcb_xfixes_region_extents_request_t 437 **/ 438 typedef struct xcb_xfixes_region_extents_request_t { 439 uint8_t major_opcode; 440 uint8_t minor_opcode; 441 uint16_t length; 442 xcb_xfixes_region_t source; 443 xcb_xfixes_region_t destination; 444 } xcb_xfixes_region_extents_request_t; 445 446 /** 447 * @brief xcb_xfixes_fetch_region_cookie_t 448 **/ 449 typedef struct xcb_xfixes_fetch_region_cookie_t { 450 unsigned int sequence; 451 } xcb_xfixes_fetch_region_cookie_t; 452 453 /** Opcode for xcb_xfixes_fetch_region. */ 454 #define XCB_XFIXES_FETCH_REGION 19 455 456 /** 457 * @brief xcb_xfixes_fetch_region_request_t 458 **/ 459 typedef struct xcb_xfixes_fetch_region_request_t { 460 uint8_t major_opcode; 461 uint8_t minor_opcode; 462 uint16_t length; 463 xcb_xfixes_region_t region; 464 } xcb_xfixes_fetch_region_request_t; 465 466 /** 467 * @brief xcb_xfixes_fetch_region_reply_t 468 **/ 469 typedef struct xcb_xfixes_fetch_region_reply_t { 470 uint8_t response_type; 471 uint8_t pad0; 472 uint16_t sequence; 473 uint32_t length; 474 xcb_rectangle_t extents; 475 uint8_t pad1[16]; 476 } xcb_xfixes_fetch_region_reply_t; 477 478 /** Opcode for xcb_xfixes_set_gc_clip_region. */ 479 #define XCB_XFIXES_SET_GC_CLIP_REGION 20 480 481 /** 482 * @brief xcb_xfixes_set_gc_clip_region_request_t 483 **/ 484 typedef struct xcb_xfixes_set_gc_clip_region_request_t { 485 uint8_t major_opcode; 486 uint8_t minor_opcode; 487 uint16_t length; 488 xcb_gcontext_t gc; 489 xcb_xfixes_region_t region; 490 int16_t x_origin; 491 int16_t y_origin; 492 } xcb_xfixes_set_gc_clip_region_request_t; 493 494 /** Opcode for xcb_xfixes_set_window_shape_region. */ 495 #define XCB_XFIXES_SET_WINDOW_SHAPE_REGION 21 496 497 /** 498 * @brief xcb_xfixes_set_window_shape_region_request_t 499 **/ 500 typedef struct xcb_xfixes_set_window_shape_region_request_t { 501 uint8_t major_opcode; 502 uint8_t minor_opcode; 503 uint16_t length; 504 xcb_window_t dest; 505 xcb_shape_kind_t dest_kind; 506 uint8_t pad0[3]; 507 int16_t x_offset; 508 int16_t y_offset; 509 xcb_xfixes_region_t region; 510 } xcb_xfixes_set_window_shape_region_request_t; 511 512 /** Opcode for xcb_xfixes_set_picture_clip_region. */ 513 #define XCB_XFIXES_SET_PICTURE_CLIP_REGION 22 514 515 /** 516 * @brief xcb_xfixes_set_picture_clip_region_request_t 517 **/ 518 typedef struct xcb_xfixes_set_picture_clip_region_request_t { 519 uint8_t major_opcode; 520 uint8_t minor_opcode; 521 uint16_t length; 522 xcb_render_picture_t picture; 523 xcb_xfixes_region_t region; 524 int16_t x_origin; 525 int16_t y_origin; 526 } xcb_xfixes_set_picture_clip_region_request_t; 527 528 /** Opcode for xcb_xfixes_set_cursor_name. */ 529 #define XCB_XFIXES_SET_CURSOR_NAME 23 530 531 /** 532 * @brief xcb_xfixes_set_cursor_name_request_t 533 **/ 534 typedef struct xcb_xfixes_set_cursor_name_request_t { 535 uint8_t major_opcode; 536 uint8_t minor_opcode; 537 uint16_t length; 538 xcb_cursor_t cursor; 539 uint16_t nbytes; 540 uint8_t pad0[2]; 541 } xcb_xfixes_set_cursor_name_request_t; 542 543 /** 544 * @brief xcb_xfixes_get_cursor_name_cookie_t 545 **/ 546 typedef struct xcb_xfixes_get_cursor_name_cookie_t { 547 unsigned int sequence; 548 } xcb_xfixes_get_cursor_name_cookie_t; 549 550 /** Opcode for xcb_xfixes_get_cursor_name. */ 551 #define XCB_XFIXES_GET_CURSOR_NAME 24 552 553 /** 554 * @brief xcb_xfixes_get_cursor_name_request_t 555 **/ 556 typedef struct xcb_xfixes_get_cursor_name_request_t { 557 uint8_t major_opcode; 558 uint8_t minor_opcode; 559 uint16_t length; 560 xcb_cursor_t cursor; 561 } xcb_xfixes_get_cursor_name_request_t; 562 563 /** 564 * @brief xcb_xfixes_get_cursor_name_reply_t 565 **/ 566 typedef struct xcb_xfixes_get_cursor_name_reply_t { 567 uint8_t response_type; 568 uint8_t pad0; 569 uint16_t sequence; 570 uint32_t length; 571 xcb_atom_t atom; 572 uint16_t nbytes; 573 uint8_t pad1[18]; 574 } xcb_xfixes_get_cursor_name_reply_t; 575 576 /** 577 * @brief xcb_xfixes_get_cursor_image_and_name_cookie_t 578 **/ 579 typedef struct xcb_xfixes_get_cursor_image_and_name_cookie_t { 580 unsigned int sequence; 581 } xcb_xfixes_get_cursor_image_and_name_cookie_t; 582 583 /** Opcode for xcb_xfixes_get_cursor_image_and_name. */ 584 #define XCB_XFIXES_GET_CURSOR_IMAGE_AND_NAME 25 585 586 /** 587 * @brief xcb_xfixes_get_cursor_image_and_name_request_t 588 **/ 589 typedef struct xcb_xfixes_get_cursor_image_and_name_request_t { 590 uint8_t major_opcode; 591 uint8_t minor_opcode; 592 uint16_t length; 593 } xcb_xfixes_get_cursor_image_and_name_request_t; 594 595 /** 596 * @brief xcb_xfixes_get_cursor_image_and_name_reply_t 597 **/ 598 typedef struct xcb_xfixes_get_cursor_image_and_name_reply_t { 599 uint8_t response_type; 600 uint8_t pad0; 601 uint16_t sequence; 602 uint32_t length; 603 int16_t x; 604 int16_t y; 605 uint16_t width; 606 uint16_t height; 607 uint16_t xhot; 608 uint16_t yhot; 609 uint32_t cursor_serial; 610 xcb_atom_t cursor_atom; 611 uint16_t nbytes; 612 uint8_t pad1[2]; 613 } xcb_xfixes_get_cursor_image_and_name_reply_t; 614 615 /** Opcode for xcb_xfixes_change_cursor. */ 616 #define XCB_XFIXES_CHANGE_CURSOR 26 617 618 /** 619 * @brief xcb_xfixes_change_cursor_request_t 620 **/ 621 typedef struct xcb_xfixes_change_cursor_request_t { 622 uint8_t major_opcode; 623 uint8_t minor_opcode; 624 uint16_t length; 625 xcb_cursor_t source; 626 xcb_cursor_t destination; 627 } xcb_xfixes_change_cursor_request_t; 628 629 /** Opcode for xcb_xfixes_change_cursor_by_name. */ 630 #define XCB_XFIXES_CHANGE_CURSOR_BY_NAME 27 631 632 /** 633 * @brief xcb_xfixes_change_cursor_by_name_request_t 634 **/ 635 typedef struct xcb_xfixes_change_cursor_by_name_request_t { 636 uint8_t major_opcode; 637 uint8_t minor_opcode; 638 uint16_t length; 639 xcb_cursor_t src; 640 uint16_t nbytes; 641 uint8_t pad0[2]; 642 } xcb_xfixes_change_cursor_by_name_request_t; 643 644 /** Opcode for xcb_xfixes_expand_region. */ 645 #define XCB_XFIXES_EXPAND_REGION 28 646 647 /** 648 * @brief xcb_xfixes_expand_region_request_t 649 **/ 650 typedef struct xcb_xfixes_expand_region_request_t { 651 uint8_t major_opcode; 652 uint8_t minor_opcode; 653 uint16_t length; 654 xcb_xfixes_region_t source; 655 xcb_xfixes_region_t destination; 656 uint16_t left; 657 uint16_t right; 658 uint16_t top; 659 uint16_t bottom; 660 } xcb_xfixes_expand_region_request_t; 661 662 /** Opcode for xcb_xfixes_hide_cursor. */ 663 #define XCB_XFIXES_HIDE_CURSOR 29 664 665 /** 666 * @brief xcb_xfixes_hide_cursor_request_t 667 **/ 668 typedef struct xcb_xfixes_hide_cursor_request_t { 669 uint8_t major_opcode; 670 uint8_t minor_opcode; 671 uint16_t length; 672 xcb_window_t window; 673 } xcb_xfixes_hide_cursor_request_t; 674 675 /** Opcode for xcb_xfixes_show_cursor. */ 676 #define XCB_XFIXES_SHOW_CURSOR 30 677 678 /** 679 * @brief xcb_xfixes_show_cursor_request_t 680 **/ 681 typedef struct xcb_xfixes_show_cursor_request_t { 682 uint8_t major_opcode; 683 uint8_t minor_opcode; 684 uint16_t length; 685 xcb_window_t window; 686 } xcb_xfixes_show_cursor_request_t; 687 688 typedef uint32_t xcb_xfixes_barrier_t; 689 690 /** 691 * @brief xcb_xfixes_barrier_iterator_t 692 **/ 693 typedef struct xcb_xfixes_barrier_iterator_t { 694 xcb_xfixes_barrier_t *data; 695 int rem; 696 int index; 697 } xcb_xfixes_barrier_iterator_t; 698 699 typedef enum xcb_xfixes_barrier_directions_t { 700 XCB_XFIXES_BARRIER_DIRECTIONS_POSITIVE_X = 1, 701 XCB_XFIXES_BARRIER_DIRECTIONS_POSITIVE_Y = 2, 702 XCB_XFIXES_BARRIER_DIRECTIONS_NEGATIVE_X = 4, 703 XCB_XFIXES_BARRIER_DIRECTIONS_NEGATIVE_Y = 8 704 } xcb_xfixes_barrier_directions_t; 705 706 /** Opcode for xcb_xfixes_create_pointer_barrier. */ 707 #define XCB_XFIXES_CREATE_POINTER_BARRIER 31 708 709 /** 710 * @brief xcb_xfixes_create_pointer_barrier_request_t 711 **/ 712 typedef struct xcb_xfixes_create_pointer_barrier_request_t { 713 uint8_t major_opcode; 714 uint8_t minor_opcode; 715 uint16_t length; 716 xcb_xfixes_barrier_t barrier; 717 xcb_window_t window; 718 uint16_t x1; 719 uint16_t y1; 720 uint16_t x2; 721 uint16_t y2; 722 uint32_t directions; 723 uint8_t pad0[2]; 724 uint16_t num_devices; 725 } xcb_xfixes_create_pointer_barrier_request_t; 726 727 /** Opcode for xcb_xfixes_delete_pointer_barrier. */ 728 #define XCB_XFIXES_DELETE_POINTER_BARRIER 32 729 730 /** 731 * @brief xcb_xfixes_delete_pointer_barrier_request_t 732 **/ 733 typedef struct xcb_xfixes_delete_pointer_barrier_request_t { 734 uint8_t major_opcode; 735 uint8_t minor_opcode; 736 uint16_t length; 737 xcb_xfixes_barrier_t barrier; 738 } xcb_xfixes_delete_pointer_barrier_request_t; 739 740 typedef enum xcb_xfixes_client_disconnect_flags_t { 741 XCB_XFIXES_CLIENT_DISCONNECT_FLAGS_DEFAULT = 0, 742 /**< The default behavior for regular clients: the X11 server won't terminate as long 743 as such clients are still connected, and should this client disconnect, the 744 server will continue running so long as other clients (that have not set 745 XFixesClientDisconnectFlagTerminate) are connected. */ 746 747 XCB_XFIXES_CLIENT_DISCONNECT_FLAGS_TERMINATE = 1 748 /**< Indicates to the X11 server that it can ignore the client and terminate itself 749 even though the client is still connected to the X11 server. */ 750 751 } xcb_xfixes_client_disconnect_flags_t; 752 753 /** Opcode for xcb_xfixes_set_client_disconnect_mode. */ 754 #define XCB_XFIXES_SET_CLIENT_DISCONNECT_MODE 33 755 756 /** 757 * @brief xcb_xfixes_set_client_disconnect_mode_request_t 758 **/ 759 typedef struct xcb_xfixes_set_client_disconnect_mode_request_t { 760 uint8_t major_opcode; 761 uint8_t minor_opcode; 762 uint16_t length; 763 uint32_t disconnect_mode; 764 } xcb_xfixes_set_client_disconnect_mode_request_t; 765 766 /** 767 * @brief xcb_xfixes_get_client_disconnect_mode_cookie_t 768 **/ 769 typedef struct xcb_xfixes_get_client_disconnect_mode_cookie_t { 770 unsigned int sequence; 771 } xcb_xfixes_get_client_disconnect_mode_cookie_t; 772 773 /** Opcode for xcb_xfixes_get_client_disconnect_mode. */ 774 #define XCB_XFIXES_GET_CLIENT_DISCONNECT_MODE 34 775 776 /** 777 * @brief xcb_xfixes_get_client_disconnect_mode_request_t 778 **/ 779 typedef struct xcb_xfixes_get_client_disconnect_mode_request_t { 780 uint8_t major_opcode; 781 uint8_t minor_opcode; 782 uint16_t length; 783 } xcb_xfixes_get_client_disconnect_mode_request_t; 784 785 /** 786 * @brief xcb_xfixes_get_client_disconnect_mode_reply_t 787 **/ 788 typedef struct xcb_xfixes_get_client_disconnect_mode_reply_t { 789 uint8_t response_type; 790 uint8_t pad0; 791 uint16_t sequence; 792 uint32_t length; 793 uint32_t disconnect_mode; 794 uint8_t pad1[20]; 795 } xcb_xfixes_get_client_disconnect_mode_reply_t; 796 797 /** 798 * 799 * @param c The connection 800 * @return A cookie 801 * 802 * Delivers a request to the X server. 803 * 804 */ 805 xcb_xfixes_query_version_cookie_t 806 xcb_xfixes_query_version (xcb_connection_t *c, 807 uint32_t client_major_version, 808 uint32_t client_minor_version); 809 810 /** 811 * 812 * @param c The connection 813 * @return A cookie 814 * 815 * Delivers a request to the X server. 816 * 817 * This form can be used only if the request will cause 818 * a reply to be generated. Any returned error will be 819 * placed in the event queue. 820 */ 821 xcb_xfixes_query_version_cookie_t 822 xcb_xfixes_query_version_unchecked (xcb_connection_t *c, 823 uint32_t client_major_version, 824 uint32_t client_minor_version); 825 826 /** 827 * Return the reply 828 * @param c The connection 829 * @param cookie The cookie 830 * @param e The xcb_generic_error_t supplied 831 * 832 * Returns the reply of the request asked by 833 * 834 * The parameter @p e supplied to this function must be NULL if 835 * xcb_xfixes_query_version_unchecked(). is used. 836 * Otherwise, it stores the error if any. 837 * 838 * The returned value must be freed by the caller using free(). 839 */ 840 xcb_xfixes_query_version_reply_t * 841 xcb_xfixes_query_version_reply (xcb_connection_t *c, 842 xcb_xfixes_query_version_cookie_t cookie /**< */, 843 xcb_generic_error_t **e); 844 845 /** 846 * 847 * @param c The connection 848 * @return A cookie 849 * 850 * Delivers a request to the X server. 851 * 852 * This form can be used only if the request will not cause 853 * a reply to be generated. Any returned error will be 854 * saved for handling by xcb_request_check(). 855 */ 856 xcb_void_cookie_t 857 xcb_xfixes_change_save_set_checked (xcb_connection_t *c, 858 uint8_t mode, 859 uint8_t target, 860 uint8_t map, 861 xcb_window_t window); 862 863 /** 864 * 865 * @param c The connection 866 * @return A cookie 867 * 868 * Delivers a request to the X server. 869 * 870 */ 871 xcb_void_cookie_t 872 xcb_xfixes_change_save_set (xcb_connection_t *c, 873 uint8_t mode, 874 uint8_t target, 875 uint8_t map, 876 xcb_window_t window); 877 878 /** 879 * 880 * @param c The connection 881 * @return A cookie 882 * 883 * Delivers a request to the X server. 884 * 885 * This form can be used only if the request will not cause 886 * a reply to be generated. Any returned error will be 887 * saved for handling by xcb_request_check(). 888 */ 889 xcb_void_cookie_t 890 xcb_xfixes_select_selection_input_checked (xcb_connection_t *c, 891 xcb_window_t window, 892 xcb_atom_t selection, 893 uint32_t event_mask); 894 895 /** 896 * 897 * @param c The connection 898 * @return A cookie 899 * 900 * Delivers a request to the X server. 901 * 902 */ 903 xcb_void_cookie_t 904 xcb_xfixes_select_selection_input (xcb_connection_t *c, 905 xcb_window_t window, 906 xcb_atom_t selection, 907 uint32_t event_mask); 908 909 /** 910 * 911 * @param c The connection 912 * @return A cookie 913 * 914 * Delivers a request to the X server. 915 * 916 * This form can be used only if the request will not cause 917 * a reply to be generated. Any returned error will be 918 * saved for handling by xcb_request_check(). 919 */ 920 xcb_void_cookie_t 921 xcb_xfixes_select_cursor_input_checked (xcb_connection_t *c, 922 xcb_window_t window, 923 uint32_t event_mask); 924 925 /** 926 * 927 * @param c The connection 928 * @return A cookie 929 * 930 * Delivers a request to the X server. 931 * 932 */ 933 xcb_void_cookie_t 934 xcb_xfixes_select_cursor_input (xcb_connection_t *c, 935 xcb_window_t window, 936 uint32_t event_mask); 937 938 int 939 xcb_xfixes_get_cursor_image_sizeof (const void *_buffer); 940 941 /** 942 * 943 * @param c The connection 944 * @return A cookie 945 * 946 * Delivers a request to the X server. 947 * 948 */ 949 xcb_xfixes_get_cursor_image_cookie_t 950 xcb_xfixes_get_cursor_image (xcb_connection_t *c); 951 952 /** 953 * 954 * @param c The connection 955 * @return A cookie 956 * 957 * Delivers a request to the X server. 958 * 959 * This form can be used only if the request will cause 960 * a reply to be generated. Any returned error will be 961 * placed in the event queue. 962 */ 963 xcb_xfixes_get_cursor_image_cookie_t 964 xcb_xfixes_get_cursor_image_unchecked (xcb_connection_t *c); 965 966 uint32_t * 967 xcb_xfixes_get_cursor_image_cursor_image (const xcb_xfixes_get_cursor_image_reply_t *R); 968 969 int 970 xcb_xfixes_get_cursor_image_cursor_image_length (const xcb_xfixes_get_cursor_image_reply_t *R); 971 972 xcb_generic_iterator_t 973 xcb_xfixes_get_cursor_image_cursor_image_end (const xcb_xfixes_get_cursor_image_reply_t *R); 974 975 /** 976 * Return the reply 977 * @param c The connection 978 * @param cookie The cookie 979 * @param e The xcb_generic_error_t supplied 980 * 981 * Returns the reply of the request asked by 982 * 983 * The parameter @p e supplied to this function must be NULL if 984 * xcb_xfixes_get_cursor_image_unchecked(). is used. 985 * Otherwise, it stores the error if any. 986 * 987 * The returned value must be freed by the caller using free(). 988 */ 989 xcb_xfixes_get_cursor_image_reply_t * 990 xcb_xfixes_get_cursor_image_reply (xcb_connection_t *c, 991 xcb_xfixes_get_cursor_image_cookie_t cookie /**< */, 992 xcb_generic_error_t **e); 993 994 /** 995 * Get the next element of the iterator 996 * @param i Pointer to a xcb_xfixes_region_iterator_t 997 * 998 * Get the next element in the iterator. The member rem is 999 * decreased by one. The member data points to the next 1000 * element. The member index is increased by sizeof(xcb_xfixes_region_t) 1001 */ 1002 void 1003 xcb_xfixes_region_next (xcb_xfixes_region_iterator_t *i); 1004 1005 /** 1006 * Return the iterator pointing to the last element 1007 * @param i An xcb_xfixes_region_iterator_t 1008 * @return The iterator pointing to the last element 1009 * 1010 * Set the current element in the iterator to the last element. 1011 * The member rem is set to 0. The member data points to the 1012 * last element. 1013 */ 1014 xcb_generic_iterator_t 1015 xcb_xfixes_region_end (xcb_xfixes_region_iterator_t i); 1016 1017 int 1018 xcb_xfixes_create_region_sizeof (const void *_buffer, 1019 uint32_t rectangles_len); 1020 1021 /** 1022 * 1023 * @param c The connection 1024 * @return A cookie 1025 * 1026 * Delivers a request to the X server. 1027 * 1028 * This form can be used only if the request will not cause 1029 * a reply to be generated. Any returned error will be 1030 * saved for handling by xcb_request_check(). 1031 */ 1032 xcb_void_cookie_t 1033 xcb_xfixes_create_region_checked (xcb_connection_t *c, 1034 xcb_xfixes_region_t region, 1035 uint32_t rectangles_len, 1036 const xcb_rectangle_t *rectangles); 1037 1038 /** 1039 * 1040 * @param c The connection 1041 * @return A cookie 1042 * 1043 * Delivers a request to the X server. 1044 * 1045 */ 1046 xcb_void_cookie_t 1047 xcb_xfixes_create_region (xcb_connection_t *c, 1048 xcb_xfixes_region_t region, 1049 uint32_t rectangles_len, 1050 const xcb_rectangle_t *rectangles); 1051 1052 xcb_rectangle_t * 1053 xcb_xfixes_create_region_rectangles (const xcb_xfixes_create_region_request_t *R); 1054 1055 int 1056 xcb_xfixes_create_region_rectangles_length (const xcb_xfixes_create_region_request_t *R); 1057 1058 xcb_rectangle_iterator_t 1059 xcb_xfixes_create_region_rectangles_iterator (const xcb_xfixes_create_region_request_t *R); 1060 1061 /** 1062 * 1063 * @param c The connection 1064 * @return A cookie 1065 * 1066 * Delivers a request to the X server. 1067 * 1068 * This form can be used only if the request will not cause 1069 * a reply to be generated. Any returned error will be 1070 * saved for handling by xcb_request_check(). 1071 */ 1072 xcb_void_cookie_t 1073 xcb_xfixes_create_region_from_bitmap_checked (xcb_connection_t *c, 1074 xcb_xfixes_region_t region, 1075 xcb_pixmap_t bitmap); 1076 1077 /** 1078 * 1079 * @param c The connection 1080 * @return A cookie 1081 * 1082 * Delivers a request to the X server. 1083 * 1084 */ 1085 xcb_void_cookie_t 1086 xcb_xfixes_create_region_from_bitmap (xcb_connection_t *c, 1087 xcb_xfixes_region_t region, 1088 xcb_pixmap_t bitmap); 1089 1090 /** 1091 * 1092 * @param c The connection 1093 * @return A cookie 1094 * 1095 * Delivers a request to the X server. 1096 * 1097 * This form can be used only if the request will not cause 1098 * a reply to be generated. Any returned error will be 1099 * saved for handling by xcb_request_check(). 1100 */ 1101 xcb_void_cookie_t 1102 xcb_xfixes_create_region_from_window_checked (xcb_connection_t *c, 1103 xcb_xfixes_region_t region, 1104 xcb_window_t window, 1105 xcb_shape_kind_t kind); 1106 1107 /** 1108 * 1109 * @param c The connection 1110 * @return A cookie 1111 * 1112 * Delivers a request to the X server. 1113 * 1114 */ 1115 xcb_void_cookie_t 1116 xcb_xfixes_create_region_from_window (xcb_connection_t *c, 1117 xcb_xfixes_region_t region, 1118 xcb_window_t window, 1119 xcb_shape_kind_t kind); 1120 1121 /** 1122 * 1123 * @param c The connection 1124 * @return A cookie 1125 * 1126 * Delivers a request to the X server. 1127 * 1128 * This form can be used only if the request will not cause 1129 * a reply to be generated. Any returned error will be 1130 * saved for handling by xcb_request_check(). 1131 */ 1132 xcb_void_cookie_t 1133 xcb_xfixes_create_region_from_gc_checked (xcb_connection_t *c, 1134 xcb_xfixes_region_t region, 1135 xcb_gcontext_t gc); 1136 1137 /** 1138 * 1139 * @param c The connection 1140 * @return A cookie 1141 * 1142 * Delivers a request to the X server. 1143 * 1144 */ 1145 xcb_void_cookie_t 1146 xcb_xfixes_create_region_from_gc (xcb_connection_t *c, 1147 xcb_xfixes_region_t region, 1148 xcb_gcontext_t gc); 1149 1150 /** 1151 * 1152 * @param c The connection 1153 * @return A cookie 1154 * 1155 * Delivers a request to the X server. 1156 * 1157 * This form can be used only if the request will not cause 1158 * a reply to be generated. Any returned error will be 1159 * saved for handling by xcb_request_check(). 1160 */ 1161 xcb_void_cookie_t 1162 xcb_xfixes_create_region_from_picture_checked (xcb_connection_t *c, 1163 xcb_xfixes_region_t region, 1164 xcb_render_picture_t picture); 1165 1166 /** 1167 * 1168 * @param c The connection 1169 * @return A cookie 1170 * 1171 * Delivers a request to the X server. 1172 * 1173 */ 1174 xcb_void_cookie_t 1175 xcb_xfixes_create_region_from_picture (xcb_connection_t *c, 1176 xcb_xfixes_region_t region, 1177 xcb_render_picture_t picture); 1178 1179 /** 1180 * 1181 * @param c The connection 1182 * @return A cookie 1183 * 1184 * Delivers a request to the X server. 1185 * 1186 * This form can be used only if the request will not cause 1187 * a reply to be generated. Any returned error will be 1188 * saved for handling by xcb_request_check(). 1189 */ 1190 xcb_void_cookie_t 1191 xcb_xfixes_destroy_region_checked (xcb_connection_t *c, 1192 xcb_xfixes_region_t region); 1193 1194 /** 1195 * 1196 * @param c The connection 1197 * @return A cookie 1198 * 1199 * Delivers a request to the X server. 1200 * 1201 */ 1202 xcb_void_cookie_t 1203 xcb_xfixes_destroy_region (xcb_connection_t *c, 1204 xcb_xfixes_region_t region); 1205 1206 int 1207 xcb_xfixes_set_region_sizeof (const void *_buffer, 1208 uint32_t rectangles_len); 1209 1210 /** 1211 * 1212 * @param c The connection 1213 * @return A cookie 1214 * 1215 * Delivers a request to the X server. 1216 * 1217 * This form can be used only if the request will not cause 1218 * a reply to be generated. Any returned error will be 1219 * saved for handling by xcb_request_check(). 1220 */ 1221 xcb_void_cookie_t 1222 xcb_xfixes_set_region_checked (xcb_connection_t *c, 1223 xcb_xfixes_region_t region, 1224 uint32_t rectangles_len, 1225 const xcb_rectangle_t *rectangles); 1226 1227 /** 1228 * 1229 * @param c The connection 1230 * @return A cookie 1231 * 1232 * Delivers a request to the X server. 1233 * 1234 */ 1235 xcb_void_cookie_t 1236 xcb_xfixes_set_region (xcb_connection_t *c, 1237 xcb_xfixes_region_t region, 1238 uint32_t rectangles_len, 1239 const xcb_rectangle_t *rectangles); 1240 1241 xcb_rectangle_t * 1242 xcb_xfixes_set_region_rectangles (const xcb_xfixes_set_region_request_t *R); 1243 1244 int 1245 xcb_xfixes_set_region_rectangles_length (const xcb_xfixes_set_region_request_t *R); 1246 1247 xcb_rectangle_iterator_t 1248 xcb_xfixes_set_region_rectangles_iterator (const xcb_xfixes_set_region_request_t *R); 1249 1250 /** 1251 * 1252 * @param c The connection 1253 * @return A cookie 1254 * 1255 * Delivers a request to the X server. 1256 * 1257 * This form can be used only if the request will not cause 1258 * a reply to be generated. Any returned error will be 1259 * saved for handling by xcb_request_check(). 1260 */ 1261 xcb_void_cookie_t 1262 xcb_xfixes_copy_region_checked (xcb_connection_t *c, 1263 xcb_xfixes_region_t source, 1264 xcb_xfixes_region_t destination); 1265 1266 /** 1267 * 1268 * @param c The connection 1269 * @return A cookie 1270 * 1271 * Delivers a request to the X server. 1272 * 1273 */ 1274 xcb_void_cookie_t 1275 xcb_xfixes_copy_region (xcb_connection_t *c, 1276 xcb_xfixes_region_t source, 1277 xcb_xfixes_region_t destination); 1278 1279 /** 1280 * 1281 * @param c The connection 1282 * @return A cookie 1283 * 1284 * Delivers a request to the X server. 1285 * 1286 * This form can be used only if the request will not cause 1287 * a reply to be generated. Any returned error will be 1288 * saved for handling by xcb_request_check(). 1289 */ 1290 xcb_void_cookie_t 1291 xcb_xfixes_union_region_checked (xcb_connection_t *c, 1292 xcb_xfixes_region_t source1, 1293 xcb_xfixes_region_t source2, 1294 xcb_xfixes_region_t destination); 1295 1296 /** 1297 * 1298 * @param c The connection 1299 * @return A cookie 1300 * 1301 * Delivers a request to the X server. 1302 * 1303 */ 1304 xcb_void_cookie_t 1305 xcb_xfixes_union_region (xcb_connection_t *c, 1306 xcb_xfixes_region_t source1, 1307 xcb_xfixes_region_t source2, 1308 xcb_xfixes_region_t destination); 1309 1310 /** 1311 * 1312 * @param c The connection 1313 * @return A cookie 1314 * 1315 * Delivers a request to the X server. 1316 * 1317 * This form can be used only if the request will not cause 1318 * a reply to be generated. Any returned error will be 1319 * saved for handling by xcb_request_check(). 1320 */ 1321 xcb_void_cookie_t 1322 xcb_xfixes_intersect_region_checked (xcb_connection_t *c, 1323 xcb_xfixes_region_t source1, 1324 xcb_xfixes_region_t source2, 1325 xcb_xfixes_region_t destination); 1326 1327 /** 1328 * 1329 * @param c The connection 1330 * @return A cookie 1331 * 1332 * Delivers a request to the X server. 1333 * 1334 */ 1335 xcb_void_cookie_t 1336 xcb_xfixes_intersect_region (xcb_connection_t *c, 1337 xcb_xfixes_region_t source1, 1338 xcb_xfixes_region_t source2, 1339 xcb_xfixes_region_t destination); 1340 1341 /** 1342 * 1343 * @param c The connection 1344 * @return A cookie 1345 * 1346 * Delivers a request to the X server. 1347 * 1348 * This form can be used only if the request will not cause 1349 * a reply to be generated. Any returned error will be 1350 * saved for handling by xcb_request_check(). 1351 */ 1352 xcb_void_cookie_t 1353 xcb_xfixes_subtract_region_checked (xcb_connection_t *c, 1354 xcb_xfixes_region_t source1, 1355 xcb_xfixes_region_t source2, 1356 xcb_xfixes_region_t destination); 1357 1358 /** 1359 * 1360 * @param c The connection 1361 * @return A cookie 1362 * 1363 * Delivers a request to the X server. 1364 * 1365 */ 1366 xcb_void_cookie_t 1367 xcb_xfixes_subtract_region (xcb_connection_t *c, 1368 xcb_xfixes_region_t source1, 1369 xcb_xfixes_region_t source2, 1370 xcb_xfixes_region_t destination); 1371 1372 /** 1373 * 1374 * @param c The connection 1375 * @return A cookie 1376 * 1377 * Delivers a request to the X server. 1378 * 1379 * This form can be used only if the request will not cause 1380 * a reply to be generated. Any returned error will be 1381 * saved for handling by xcb_request_check(). 1382 */ 1383 xcb_void_cookie_t 1384 xcb_xfixes_invert_region_checked (xcb_connection_t *c, 1385 xcb_xfixes_region_t source, 1386 xcb_rectangle_t bounds, 1387 xcb_xfixes_region_t destination); 1388 1389 /** 1390 * 1391 * @param c The connection 1392 * @return A cookie 1393 * 1394 * Delivers a request to the X server. 1395 * 1396 */ 1397 xcb_void_cookie_t 1398 xcb_xfixes_invert_region (xcb_connection_t *c, 1399 xcb_xfixes_region_t source, 1400 xcb_rectangle_t bounds, 1401 xcb_xfixes_region_t destination); 1402 1403 /** 1404 * 1405 * @param c The connection 1406 * @return A cookie 1407 * 1408 * Delivers a request to the X server. 1409 * 1410 * This form can be used only if the request will not cause 1411 * a reply to be generated. Any returned error will be 1412 * saved for handling by xcb_request_check(). 1413 */ 1414 xcb_void_cookie_t 1415 xcb_xfixes_translate_region_checked (xcb_connection_t *c, 1416 xcb_xfixes_region_t region, 1417 int16_t dx, 1418 int16_t dy); 1419 1420 /** 1421 * 1422 * @param c The connection 1423 * @return A cookie 1424 * 1425 * Delivers a request to the X server. 1426 * 1427 */ 1428 xcb_void_cookie_t 1429 xcb_xfixes_translate_region (xcb_connection_t *c, 1430 xcb_xfixes_region_t region, 1431 int16_t dx, 1432 int16_t dy); 1433 1434 /** 1435 * 1436 * @param c The connection 1437 * @return A cookie 1438 * 1439 * Delivers a request to the X server. 1440 * 1441 * This form can be used only if the request will not cause 1442 * a reply to be generated. Any returned error will be 1443 * saved for handling by xcb_request_check(). 1444 */ 1445 xcb_void_cookie_t 1446 xcb_xfixes_region_extents_checked (xcb_connection_t *c, 1447 xcb_xfixes_region_t source, 1448 xcb_xfixes_region_t destination); 1449 1450 /** 1451 * 1452 * @param c The connection 1453 * @return A cookie 1454 * 1455 * Delivers a request to the X server. 1456 * 1457 */ 1458 xcb_void_cookie_t 1459 xcb_xfixes_region_extents (xcb_connection_t *c, 1460 xcb_xfixes_region_t source, 1461 xcb_xfixes_region_t destination); 1462 1463 int 1464 xcb_xfixes_fetch_region_sizeof (const void *_buffer); 1465 1466 /** 1467 * 1468 * @param c The connection 1469 * @return A cookie 1470 * 1471 * Delivers a request to the X server. 1472 * 1473 */ 1474 xcb_xfixes_fetch_region_cookie_t 1475 xcb_xfixes_fetch_region (xcb_connection_t *c, 1476 xcb_xfixes_region_t region); 1477 1478 /** 1479 * 1480 * @param c The connection 1481 * @return A cookie 1482 * 1483 * Delivers a request to the X server. 1484 * 1485 * This form can be used only if the request will cause 1486 * a reply to be generated. Any returned error will be 1487 * placed in the event queue. 1488 */ 1489 xcb_xfixes_fetch_region_cookie_t 1490 xcb_xfixes_fetch_region_unchecked (xcb_connection_t *c, 1491 xcb_xfixes_region_t region); 1492 1493 xcb_rectangle_t * 1494 xcb_xfixes_fetch_region_rectangles (const xcb_xfixes_fetch_region_reply_t *R); 1495 1496 int 1497 xcb_xfixes_fetch_region_rectangles_length (const xcb_xfixes_fetch_region_reply_t *R); 1498 1499 xcb_rectangle_iterator_t 1500 xcb_xfixes_fetch_region_rectangles_iterator (const xcb_xfixes_fetch_region_reply_t *R); 1501 1502 /** 1503 * Return the reply 1504 * @param c The connection 1505 * @param cookie The cookie 1506 * @param e The xcb_generic_error_t supplied 1507 * 1508 * Returns the reply of the request asked by 1509 * 1510 * The parameter @p e supplied to this function must be NULL if 1511 * xcb_xfixes_fetch_region_unchecked(). is used. 1512 * Otherwise, it stores the error if any. 1513 * 1514 * The returned value must be freed by the caller using free(). 1515 */ 1516 xcb_xfixes_fetch_region_reply_t * 1517 xcb_xfixes_fetch_region_reply (xcb_connection_t *c, 1518 xcb_xfixes_fetch_region_cookie_t cookie /**< */, 1519 xcb_generic_error_t **e); 1520 1521 /** 1522 * 1523 * @param c The connection 1524 * @return A cookie 1525 * 1526 * Delivers a request to the X server. 1527 * 1528 * This form can be used only if the request will not cause 1529 * a reply to be generated. Any returned error will be 1530 * saved for handling by xcb_request_check(). 1531 */ 1532 xcb_void_cookie_t 1533 xcb_xfixes_set_gc_clip_region_checked (xcb_connection_t *c, 1534 xcb_gcontext_t gc, 1535 xcb_xfixes_region_t region, 1536 int16_t x_origin, 1537 int16_t y_origin); 1538 1539 /** 1540 * 1541 * @param c The connection 1542 * @return A cookie 1543 * 1544 * Delivers a request to the X server. 1545 * 1546 */ 1547 xcb_void_cookie_t 1548 xcb_xfixes_set_gc_clip_region (xcb_connection_t *c, 1549 xcb_gcontext_t gc, 1550 xcb_xfixes_region_t region, 1551 int16_t x_origin, 1552 int16_t y_origin); 1553 1554 /** 1555 * 1556 * @param c The connection 1557 * @return A cookie 1558 * 1559 * Delivers a request to the X server. 1560 * 1561 * This form can be used only if the request will not cause 1562 * a reply to be generated. Any returned error will be 1563 * saved for handling by xcb_request_check(). 1564 */ 1565 xcb_void_cookie_t 1566 xcb_xfixes_set_window_shape_region_checked (xcb_connection_t *c, 1567 xcb_window_t dest, 1568 xcb_shape_kind_t dest_kind, 1569 int16_t x_offset, 1570 int16_t y_offset, 1571 xcb_xfixes_region_t region); 1572 1573 /** 1574 * 1575 * @param c The connection 1576 * @return A cookie 1577 * 1578 * Delivers a request to the X server. 1579 * 1580 */ 1581 xcb_void_cookie_t 1582 xcb_xfixes_set_window_shape_region (xcb_connection_t *c, 1583 xcb_window_t dest, 1584 xcb_shape_kind_t dest_kind, 1585 int16_t x_offset, 1586 int16_t y_offset, 1587 xcb_xfixes_region_t region); 1588 1589 /** 1590 * 1591 * @param c The connection 1592 * @return A cookie 1593 * 1594 * Delivers a request to the X server. 1595 * 1596 * This form can be used only if the request will not cause 1597 * a reply to be generated. Any returned error will be 1598 * saved for handling by xcb_request_check(). 1599 */ 1600 xcb_void_cookie_t 1601 xcb_xfixes_set_picture_clip_region_checked (xcb_connection_t *c, 1602 xcb_render_picture_t picture, 1603 xcb_xfixes_region_t region, 1604 int16_t x_origin, 1605 int16_t y_origin); 1606 1607 /** 1608 * 1609 * @param c The connection 1610 * @return A cookie 1611 * 1612 * Delivers a request to the X server. 1613 * 1614 */ 1615 xcb_void_cookie_t 1616 xcb_xfixes_set_picture_clip_region (xcb_connection_t *c, 1617 xcb_render_picture_t picture, 1618 xcb_xfixes_region_t region, 1619 int16_t x_origin, 1620 int16_t y_origin); 1621 1622 int 1623 xcb_xfixes_set_cursor_name_sizeof (const void *_buffer); 1624 1625 /** 1626 * 1627 * @param c The connection 1628 * @return A cookie 1629 * 1630 * Delivers a request to the X server. 1631 * 1632 * This form can be used only if the request will not cause 1633 * a reply to be generated. Any returned error will be 1634 * saved for handling by xcb_request_check(). 1635 */ 1636 xcb_void_cookie_t 1637 xcb_xfixes_set_cursor_name_checked (xcb_connection_t *c, 1638 xcb_cursor_t cursor, 1639 uint16_t nbytes, 1640 const char *name); 1641 1642 /** 1643 * 1644 * @param c The connection 1645 * @return A cookie 1646 * 1647 * Delivers a request to the X server. 1648 * 1649 */ 1650 xcb_void_cookie_t 1651 xcb_xfixes_set_cursor_name (xcb_connection_t *c, 1652 xcb_cursor_t cursor, 1653 uint16_t nbytes, 1654 const char *name); 1655 1656 char * 1657 xcb_xfixes_set_cursor_name_name (const xcb_xfixes_set_cursor_name_request_t *R); 1658 1659 int 1660 xcb_xfixes_set_cursor_name_name_length (const xcb_xfixes_set_cursor_name_request_t *R); 1661 1662 xcb_generic_iterator_t 1663 xcb_xfixes_set_cursor_name_name_end (const xcb_xfixes_set_cursor_name_request_t *R); 1664 1665 int 1666 xcb_xfixes_get_cursor_name_sizeof (const void *_buffer); 1667 1668 /** 1669 * 1670 * @param c The connection 1671 * @return A cookie 1672 * 1673 * Delivers a request to the X server. 1674 * 1675 */ 1676 xcb_xfixes_get_cursor_name_cookie_t 1677 xcb_xfixes_get_cursor_name (xcb_connection_t *c, 1678 xcb_cursor_t cursor); 1679 1680 /** 1681 * 1682 * @param c The connection 1683 * @return A cookie 1684 * 1685 * Delivers a request to the X server. 1686 * 1687 * This form can be used only if the request will cause 1688 * a reply to be generated. Any returned error will be 1689 * placed in the event queue. 1690 */ 1691 xcb_xfixes_get_cursor_name_cookie_t 1692 xcb_xfixes_get_cursor_name_unchecked (xcb_connection_t *c, 1693 xcb_cursor_t cursor); 1694 1695 char * 1696 xcb_xfixes_get_cursor_name_name (const xcb_xfixes_get_cursor_name_reply_t *R); 1697 1698 int 1699 xcb_xfixes_get_cursor_name_name_length (const xcb_xfixes_get_cursor_name_reply_t *R); 1700 1701 xcb_generic_iterator_t 1702 xcb_xfixes_get_cursor_name_name_end (const xcb_xfixes_get_cursor_name_reply_t *R); 1703 1704 /** 1705 * Return the reply 1706 * @param c The connection 1707 * @param cookie The cookie 1708 * @param e The xcb_generic_error_t supplied 1709 * 1710 * Returns the reply of the request asked by 1711 * 1712 * The parameter @p e supplied to this function must be NULL if 1713 * xcb_xfixes_get_cursor_name_unchecked(). is used. 1714 * Otherwise, it stores the error if any. 1715 * 1716 * The returned value must be freed by the caller using free(). 1717 */ 1718 xcb_xfixes_get_cursor_name_reply_t * 1719 xcb_xfixes_get_cursor_name_reply (xcb_connection_t *c, 1720 xcb_xfixes_get_cursor_name_cookie_t cookie /**< */, 1721 xcb_generic_error_t **e); 1722 1723 int 1724 xcb_xfixes_get_cursor_image_and_name_sizeof (const void *_buffer); 1725 1726 /** 1727 * 1728 * @param c The connection 1729 * @return A cookie 1730 * 1731 * Delivers a request to the X server. 1732 * 1733 */ 1734 xcb_xfixes_get_cursor_image_and_name_cookie_t 1735 xcb_xfixes_get_cursor_image_and_name (xcb_connection_t *c); 1736 1737 /** 1738 * 1739 * @param c The connection 1740 * @return A cookie 1741 * 1742 * Delivers a request to the X server. 1743 * 1744 * This form can be used only if the request will cause 1745 * a reply to be generated. Any returned error will be 1746 * placed in the event queue. 1747 */ 1748 xcb_xfixes_get_cursor_image_and_name_cookie_t 1749 xcb_xfixes_get_cursor_image_and_name_unchecked (xcb_connection_t *c); 1750 1751 uint32_t * 1752 xcb_xfixes_get_cursor_image_and_name_cursor_image (const xcb_xfixes_get_cursor_image_and_name_reply_t *R); 1753 1754 int 1755 xcb_xfixes_get_cursor_image_and_name_cursor_image_length (const xcb_xfixes_get_cursor_image_and_name_reply_t *R); 1756 1757 xcb_generic_iterator_t 1758 xcb_xfixes_get_cursor_image_and_name_cursor_image_end (const xcb_xfixes_get_cursor_image_and_name_reply_t *R); 1759 1760 char * 1761 xcb_xfixes_get_cursor_image_and_name_name (const xcb_xfixes_get_cursor_image_and_name_reply_t *R); 1762 1763 int 1764 xcb_xfixes_get_cursor_image_and_name_name_length (const xcb_xfixes_get_cursor_image_and_name_reply_t *R); 1765 1766 xcb_generic_iterator_t 1767 xcb_xfixes_get_cursor_image_and_name_name_end (const xcb_xfixes_get_cursor_image_and_name_reply_t *R); 1768 1769 /** 1770 * Return the reply 1771 * @param c The connection 1772 * @param cookie The cookie 1773 * @param e The xcb_generic_error_t supplied 1774 * 1775 * Returns the reply of the request asked by 1776 * 1777 * The parameter @p e supplied to this function must be NULL if 1778 * xcb_xfixes_get_cursor_image_and_name_unchecked(). is used. 1779 * Otherwise, it stores the error if any. 1780 * 1781 * The returned value must be freed by the caller using free(). 1782 */ 1783 xcb_xfixes_get_cursor_image_and_name_reply_t * 1784 xcb_xfixes_get_cursor_image_and_name_reply (xcb_connection_t *c, 1785 xcb_xfixes_get_cursor_image_and_name_cookie_t cookie /**< */, 1786 xcb_generic_error_t **e); 1787 1788 /** 1789 * 1790 * @param c The connection 1791 * @return A cookie 1792 * 1793 * Delivers a request to the X server. 1794 * 1795 * This form can be used only if the request will not cause 1796 * a reply to be generated. Any returned error will be 1797 * saved for handling by xcb_request_check(). 1798 */ 1799 xcb_void_cookie_t 1800 xcb_xfixes_change_cursor_checked (xcb_connection_t *c, 1801 xcb_cursor_t source, 1802 xcb_cursor_t destination); 1803 1804 /** 1805 * 1806 * @param c The connection 1807 * @return A cookie 1808 * 1809 * Delivers a request to the X server. 1810 * 1811 */ 1812 xcb_void_cookie_t 1813 xcb_xfixes_change_cursor (xcb_connection_t *c, 1814 xcb_cursor_t source, 1815 xcb_cursor_t destination); 1816 1817 int 1818 xcb_xfixes_change_cursor_by_name_sizeof (const void *_buffer); 1819 1820 /** 1821 * 1822 * @param c The connection 1823 * @return A cookie 1824 * 1825 * Delivers a request to the X server. 1826 * 1827 * This form can be used only if the request will not cause 1828 * a reply to be generated. Any returned error will be 1829 * saved for handling by xcb_request_check(). 1830 */ 1831 xcb_void_cookie_t 1832 xcb_xfixes_change_cursor_by_name_checked (xcb_connection_t *c, 1833 xcb_cursor_t src, 1834 uint16_t nbytes, 1835 const char *name); 1836 1837 /** 1838 * 1839 * @param c The connection 1840 * @return A cookie 1841 * 1842 * Delivers a request to the X server. 1843 * 1844 */ 1845 xcb_void_cookie_t 1846 xcb_xfixes_change_cursor_by_name (xcb_connection_t *c, 1847 xcb_cursor_t src, 1848 uint16_t nbytes, 1849 const char *name); 1850 1851 char * 1852 xcb_xfixes_change_cursor_by_name_name (const xcb_xfixes_change_cursor_by_name_request_t *R); 1853 1854 int 1855 xcb_xfixes_change_cursor_by_name_name_length (const xcb_xfixes_change_cursor_by_name_request_t *R); 1856 1857 xcb_generic_iterator_t 1858 xcb_xfixes_change_cursor_by_name_name_end (const xcb_xfixes_change_cursor_by_name_request_t *R); 1859 1860 /** 1861 * 1862 * @param c The connection 1863 * @return A cookie 1864 * 1865 * Delivers a request to the X server. 1866 * 1867 * This form can be used only if the request will not cause 1868 * a reply to be generated. Any returned error will be 1869 * saved for handling by xcb_request_check(). 1870 */ 1871 xcb_void_cookie_t 1872 xcb_xfixes_expand_region_checked (xcb_connection_t *c, 1873 xcb_xfixes_region_t source, 1874 xcb_xfixes_region_t destination, 1875 uint16_t left, 1876 uint16_t right, 1877 uint16_t top, 1878 uint16_t bottom); 1879 1880 /** 1881 * 1882 * @param c The connection 1883 * @return A cookie 1884 * 1885 * Delivers a request to the X server. 1886 * 1887 */ 1888 xcb_void_cookie_t 1889 xcb_xfixes_expand_region (xcb_connection_t *c, 1890 xcb_xfixes_region_t source, 1891 xcb_xfixes_region_t destination, 1892 uint16_t left, 1893 uint16_t right, 1894 uint16_t top, 1895 uint16_t bottom); 1896 1897 /** 1898 * 1899 * @param c The connection 1900 * @return A cookie 1901 * 1902 * Delivers a request to the X server. 1903 * 1904 * This form can be used only if the request will not cause 1905 * a reply to be generated. Any returned error will be 1906 * saved for handling by xcb_request_check(). 1907 */ 1908 xcb_void_cookie_t 1909 xcb_xfixes_hide_cursor_checked (xcb_connection_t *c, 1910 xcb_window_t window); 1911 1912 /** 1913 * 1914 * @param c The connection 1915 * @return A cookie 1916 * 1917 * Delivers a request to the X server. 1918 * 1919 */ 1920 xcb_void_cookie_t 1921 xcb_xfixes_hide_cursor (xcb_connection_t *c, 1922 xcb_window_t window); 1923 1924 /** 1925 * 1926 * @param c The connection 1927 * @return A cookie 1928 * 1929 * Delivers a request to the X server. 1930 * 1931 * This form can be used only if the request will not cause 1932 * a reply to be generated. Any returned error will be 1933 * saved for handling by xcb_request_check(). 1934 */ 1935 xcb_void_cookie_t 1936 xcb_xfixes_show_cursor_checked (xcb_connection_t *c, 1937 xcb_window_t window); 1938 1939 /** 1940 * 1941 * @param c The connection 1942 * @return A cookie 1943 * 1944 * Delivers a request to the X server. 1945 * 1946 */ 1947 xcb_void_cookie_t 1948 xcb_xfixes_show_cursor (xcb_connection_t *c, 1949 xcb_window_t window); 1950 1951 /** 1952 * Get the next element of the iterator 1953 * @param i Pointer to a xcb_xfixes_barrier_iterator_t 1954 * 1955 * Get the next element in the iterator. The member rem is 1956 * decreased by one. The member data points to the next 1957 * element. The member index is increased by sizeof(xcb_xfixes_barrier_t) 1958 */ 1959 void 1960 xcb_xfixes_barrier_next (xcb_xfixes_barrier_iterator_t *i); 1961 1962 /** 1963 * Return the iterator pointing to the last element 1964 * @param i An xcb_xfixes_barrier_iterator_t 1965 * @return The iterator pointing to the last element 1966 * 1967 * Set the current element in the iterator to the last element. 1968 * The member rem is set to 0. The member data points to the 1969 * last element. 1970 */ 1971 xcb_generic_iterator_t 1972 xcb_xfixes_barrier_end (xcb_xfixes_barrier_iterator_t i); 1973 1974 int 1975 xcb_xfixes_create_pointer_barrier_sizeof (const void *_buffer); 1976 1977 /** 1978 * 1979 * @param c The connection 1980 * @return A cookie 1981 * 1982 * Delivers a request to the X server. 1983 * 1984 * This form can be used only if the request will not cause 1985 * a reply to be generated. Any returned error will be 1986 * saved for handling by xcb_request_check(). 1987 */ 1988 xcb_void_cookie_t 1989 xcb_xfixes_create_pointer_barrier_checked (xcb_connection_t *c, 1990 xcb_xfixes_barrier_t barrier, 1991 xcb_window_t window, 1992 uint16_t x1, 1993 uint16_t y1, 1994 uint16_t x2, 1995 uint16_t y2, 1996 uint32_t directions, 1997 uint16_t num_devices, 1998 const uint16_t *devices); 1999 2000 /** 2001 * 2002 * @param c The connection 2003 * @return A cookie 2004 * 2005 * Delivers a request to the X server. 2006 * 2007 */ 2008 xcb_void_cookie_t 2009 xcb_xfixes_create_pointer_barrier (xcb_connection_t *c, 2010 xcb_xfixes_barrier_t barrier, 2011 xcb_window_t window, 2012 uint16_t x1, 2013 uint16_t y1, 2014 uint16_t x2, 2015 uint16_t y2, 2016 uint32_t directions, 2017 uint16_t num_devices, 2018 const uint16_t *devices); 2019 2020 uint16_t * 2021 xcb_xfixes_create_pointer_barrier_devices (const xcb_xfixes_create_pointer_barrier_request_t *R); 2022 2023 int 2024 xcb_xfixes_create_pointer_barrier_devices_length (const xcb_xfixes_create_pointer_barrier_request_t *R); 2025 2026 xcb_generic_iterator_t 2027 xcb_xfixes_create_pointer_barrier_devices_end (const xcb_xfixes_create_pointer_barrier_request_t *R); 2028 2029 /** 2030 * 2031 * @param c The connection 2032 * @return A cookie 2033 * 2034 * Delivers a request to the X server. 2035 * 2036 * This form can be used only if the request will not cause 2037 * a reply to be generated. Any returned error will be 2038 * saved for handling by xcb_request_check(). 2039 */ 2040 xcb_void_cookie_t 2041 xcb_xfixes_delete_pointer_barrier_checked (xcb_connection_t *c, 2042 xcb_xfixes_barrier_t barrier); 2043 2044 /** 2045 * 2046 * @param c The connection 2047 * @return A cookie 2048 * 2049 * Delivers a request to the X server. 2050 * 2051 */ 2052 xcb_void_cookie_t 2053 xcb_xfixes_delete_pointer_barrier (xcb_connection_t *c, 2054 xcb_xfixes_barrier_t barrier); 2055 2056 /** 2057 * @brief Sets the disconnect mode for the client. 2058 * 2059 * @param c The connection 2060 * @param disconnect_mode The new disconnect mode. 2061 * @return A cookie 2062 * 2063 * No description yet 2064 * 2065 * This form can be used only if the request will not cause 2066 * a reply to be generated. Any returned error will be 2067 * saved for handling by xcb_request_check(). 2068 */ 2069 xcb_void_cookie_t 2070 xcb_xfixes_set_client_disconnect_mode_checked (xcb_connection_t *c, 2071 uint32_t disconnect_mode); 2072 2073 /** 2074 * @brief Sets the disconnect mode for the client. 2075 * 2076 * @param c The connection 2077 * @param disconnect_mode The new disconnect mode. 2078 * @return A cookie 2079 * 2080 * No description yet 2081 * 2082 */ 2083 xcb_void_cookie_t 2084 xcb_xfixes_set_client_disconnect_mode (xcb_connection_t *c, 2085 uint32_t disconnect_mode); 2086 2087 /** 2088 * 2089 * @param c The connection 2090 * @return A cookie 2091 * 2092 * Delivers a request to the X server. 2093 * 2094 */ 2095 xcb_xfixes_get_client_disconnect_mode_cookie_t 2096 xcb_xfixes_get_client_disconnect_mode (xcb_connection_t *c); 2097 2098 /** 2099 * 2100 * @param c The connection 2101 * @return A cookie 2102 * 2103 * Delivers a request to the X server. 2104 * 2105 * This form can be used only if the request will cause 2106 * a reply to be generated. Any returned error will be 2107 * placed in the event queue. 2108 */ 2109 xcb_xfixes_get_client_disconnect_mode_cookie_t 2110 xcb_xfixes_get_client_disconnect_mode_unchecked (xcb_connection_t *c); 2111 2112 /** 2113 * Return the reply 2114 * @param c The connection 2115 * @param cookie The cookie 2116 * @param e The xcb_generic_error_t supplied 2117 * 2118 * Returns the reply of the request asked by 2119 * 2120 * The parameter @p e supplied to this function must be NULL if 2121 * xcb_xfixes_get_client_disconnect_mode_unchecked(). is used. 2122 * Otherwise, it stores the error if any. 2123 * 2124 * The returned value must be freed by the caller using free(). 2125 */ 2126 xcb_xfixes_get_client_disconnect_mode_reply_t * 2127 xcb_xfixes_get_client_disconnect_mode_reply (xcb_connection_t *c, 2128 xcb_xfixes_get_client_disconnect_mode_cookie_t cookie /**< */, 2129 xcb_generic_error_t **e); 2130 2131 2132 #ifdef __cplusplus 2133 } 2134 #endif 2135 2136 #endif 2137 2138 /** 2139 * @} 2140 */ 2141