00001
00002
00003
00004
00005
00012 #ifndef __COMPOSITE_H
00013 #define __COMPOSITE_H
00014
00015 #include "xcb.h"
00016 #include "xproto.h"
00017 #include "render.h"
00018 #include "shape.h"
00019 #include "xfixes.h"
00020
00021 #define XCB_COMPOSITE_MAJOR_VERSION 0
00022 #define XCB_COMPOSITE_MINOR_VERSION 3
00023
00024 extern xcb_extension_t xcb_composite_id;
00025
00026 typedef enum xcb_composite_redirect_t {
00027 XCB_COMPOSITE_REDIRECT_AUTOMATIC,
00028 XCB_COMPOSITE_REDIRECT_MANUAL
00029 } xcb_composite_redirect_t;
00030
00034 typedef struct xcb_composite_query_version_cookie_t {
00035 unsigned int sequence;
00036 } xcb_composite_query_version_cookie_t;
00037
00039 #define XCB_COMPOSITE_QUERY_VERSION 0
00040
00044 typedef struct xcb_composite_query_version_request_t {
00045 uint8_t major_opcode;
00046 uint8_t minor_opcode;
00047 uint16_t length;
00048 uint32_t client_major_version;
00049 uint32_t client_minor_version;
00050 } xcb_composite_query_version_request_t;
00051
00055 typedef struct xcb_composite_query_version_reply_t {
00056 uint8_t response_type;
00057 uint8_t pad0;
00058 uint16_t sequence;
00059 uint32_t length;
00060 uint32_t major_version;
00061 uint32_t minor_version;
00062 uint8_t pad1[16];
00063 } xcb_composite_query_version_reply_t;
00064
00066 #define XCB_COMPOSITE_REDIRECT_WINDOW 1
00067
00071 typedef struct xcb_composite_redirect_window_request_t {
00072 uint8_t major_opcode;
00073 uint8_t minor_opcode;
00074 uint16_t length;
00075 xcb_window_t window;
00076 uint8_t update;
00077 uint8_t pad0[3];
00078 } xcb_composite_redirect_window_request_t;
00079
00081 #define XCB_COMPOSITE_REDIRECT_SUBWINDOWS 2
00082
00086 typedef struct xcb_composite_redirect_subwindows_request_t {
00087 uint8_t major_opcode;
00088 uint8_t minor_opcode;
00089 uint16_t length;
00090 xcb_window_t window;
00091 uint8_t update;
00092 uint8_t pad0[3];
00093 } xcb_composite_redirect_subwindows_request_t;
00094
00096 #define XCB_COMPOSITE_UNREDIRECT_WINDOW 3
00097
00101 typedef struct xcb_composite_unredirect_window_request_t {
00102 uint8_t major_opcode;
00103 uint8_t minor_opcode;
00104 uint16_t length;
00105 xcb_window_t window;
00106 uint8_t update;
00107 uint8_t pad0[3];
00108 } xcb_composite_unredirect_window_request_t;
00109
00111 #define XCB_COMPOSITE_UNREDIRECT_SUBWINDOWS 4
00112
00116 typedef struct xcb_composite_unredirect_subwindows_request_t {
00117 uint8_t major_opcode;
00118 uint8_t minor_opcode;
00119 uint16_t length;
00120 xcb_window_t window;
00121 uint8_t update;
00122 uint8_t pad0[3];
00123 } xcb_composite_unredirect_subwindows_request_t;
00124
00126 #define XCB_COMPOSITE_CREATE_REGION_FROM_BORDER_CLIP 5
00127
00131 typedef struct xcb_composite_create_region_from_border_clip_request_t {
00132 uint8_t major_opcode;
00133 uint8_t minor_opcode;
00134 uint16_t length;
00135 xcb_xfixes_region_t region;
00136 xcb_window_t window;
00137 } xcb_composite_create_region_from_border_clip_request_t;
00138
00140 #define XCB_COMPOSITE_NAME_WINDOW_PIXMAP 6
00141
00145 typedef struct xcb_composite_name_window_pixmap_request_t {
00146 uint8_t major_opcode;
00147 uint8_t minor_opcode;
00148 uint16_t length;
00149 xcb_window_t window;
00150 xcb_pixmap_t pixmap;
00151 } xcb_composite_name_window_pixmap_request_t;
00152
00156 typedef struct xcb_composite_get_overlay_window_cookie_t {
00157 unsigned int sequence;
00158 } xcb_composite_get_overlay_window_cookie_t;
00159
00161 #define XCB_COMPOSITE_GET_OVERLAY_WINDOW 7
00162
00166 typedef struct xcb_composite_get_overlay_window_request_t {
00167 uint8_t major_opcode;
00168 uint8_t minor_opcode;
00169 uint16_t length;
00170 xcb_window_t window;
00171 } xcb_composite_get_overlay_window_request_t;
00172
00176 typedef struct xcb_composite_get_overlay_window_reply_t {
00177 uint8_t response_type;
00178 uint8_t pad0;
00179 uint16_t sequence;
00180 uint32_t length;
00181 xcb_window_t overlay_win;
00182 uint8_t pad1[20];
00183 } xcb_composite_get_overlay_window_reply_t;
00184
00186 #define XCB_COMPOSITE_RELEASE_OVERLAY_WINDOW 8
00187
00191 typedef struct xcb_composite_release_overlay_window_request_t {
00192 uint8_t major_opcode;
00193 uint8_t minor_opcode;
00194 uint16_t length;
00195 xcb_window_t window;
00196 } xcb_composite_release_overlay_window_request_t;
00197
00207
00208
00209
00210
00211
00212
00213
00214
00215
00216
00217
00218 xcb_composite_query_version_cookie_t
00219 xcb_composite_query_version (xcb_connection_t *c ,
00220 uint32_t client_major_version ,
00221 uint32_t client_minor_version );
00222
00235
00236
00237
00238
00239
00240
00241
00242
00243
00244
00245
00246 xcb_composite_query_version_cookie_t
00247 xcb_composite_query_version_unchecked (xcb_connection_t *c ,
00248 uint32_t client_major_version ,
00249 uint32_t client_minor_version );
00250
00266
00267
00268
00269
00270
00271
00272
00273
00274
00275
00276
00277 xcb_composite_query_version_reply_t *
00278 xcb_composite_query_version_reply (xcb_connection_t *c ,
00279 xcb_composite_query_version_cookie_t cookie ,
00280 xcb_generic_error_t **e );
00281
00294
00295
00296
00297
00298
00299
00300
00301
00302
00303
00304
00305 xcb_void_cookie_t
00306 xcb_composite_redirect_window_checked (xcb_connection_t *c ,
00307 xcb_window_t window ,
00308 uint8_t update );
00309
00319
00320
00321
00322
00323
00324
00325
00326
00327
00328
00329
00330 xcb_void_cookie_t
00331 xcb_composite_redirect_window (xcb_connection_t *c ,
00332 xcb_window_t window ,
00333 uint8_t update );
00334
00347
00348
00349
00350
00351
00352
00353
00354
00355
00356
00357
00358 xcb_void_cookie_t
00359 xcb_composite_redirect_subwindows_checked (xcb_connection_t *c ,
00360 xcb_window_t window ,
00361 uint8_t update );
00362
00372
00373
00374
00375
00376
00377
00378
00379
00380
00381
00382
00383 xcb_void_cookie_t
00384 xcb_composite_redirect_subwindows (xcb_connection_t *c ,
00385 xcb_window_t window ,
00386 uint8_t update );
00387
00400
00401
00402
00403
00404
00405
00406
00407
00408
00409
00410
00411 xcb_void_cookie_t
00412 xcb_composite_unredirect_window_checked (xcb_connection_t *c ,
00413 xcb_window_t window ,
00414 uint8_t update );
00415
00425
00426
00427
00428
00429
00430
00431
00432
00433
00434
00435
00436 xcb_void_cookie_t
00437 xcb_composite_unredirect_window (xcb_connection_t *c ,
00438 xcb_window_t window ,
00439 uint8_t update );
00440
00453
00454
00455
00456
00457
00458
00459
00460
00461
00462
00463
00464 xcb_void_cookie_t
00465 xcb_composite_unredirect_subwindows_checked (xcb_connection_t *c ,
00466 xcb_window_t window ,
00467 uint8_t update );
00468
00478
00479
00480
00481
00482
00483
00484
00485
00486
00487
00488
00489 xcb_void_cookie_t
00490 xcb_composite_unredirect_subwindows (xcb_connection_t *c ,
00491 xcb_window_t window ,
00492 uint8_t update );
00493
00506
00507
00508
00509
00510
00511
00512
00513
00514
00515
00516
00517 xcb_void_cookie_t
00518 xcb_composite_create_region_from_border_clip_checked (xcb_connection_t *c ,
00519 xcb_xfixes_region_t region ,
00520 xcb_window_t window );
00521
00531
00532
00533
00534
00535
00536
00537
00538
00539
00540
00541
00542 xcb_void_cookie_t
00543 xcb_composite_create_region_from_border_clip (xcb_connection_t *c ,
00544 xcb_xfixes_region_t region ,
00545 xcb_window_t window );
00546
00559
00560
00561
00562
00563
00564
00565
00566
00567
00568
00569
00570 xcb_void_cookie_t
00571 xcb_composite_name_window_pixmap_checked (xcb_connection_t *c ,
00572 xcb_window_t window ,
00573 xcb_pixmap_t pixmap );
00574
00584
00585
00586
00587
00588
00589
00590
00591
00592
00593
00594
00595 xcb_void_cookie_t
00596 xcb_composite_name_window_pixmap (xcb_connection_t *c ,
00597 xcb_window_t window ,
00598 xcb_pixmap_t pixmap );
00599
00609
00610
00611
00612
00613
00614
00615
00616
00617
00618
00619 xcb_composite_get_overlay_window_cookie_t
00620 xcb_composite_get_overlay_window (xcb_connection_t *c ,
00621 xcb_window_t window );
00622
00635
00636
00637
00638
00639
00640
00641
00642
00643
00644
00645 xcb_composite_get_overlay_window_cookie_t
00646 xcb_composite_get_overlay_window_unchecked (xcb_connection_t *c ,
00647 xcb_window_t window );
00648
00664
00665
00666
00667
00668
00669
00670
00671
00672
00673
00674
00675 xcb_composite_get_overlay_window_reply_t *
00676 xcb_composite_get_overlay_window_reply (xcb_connection_t *c ,
00677 xcb_composite_get_overlay_window_cookie_t cookie ,
00678 xcb_generic_error_t **e );
00679
00692
00693
00694
00695
00696
00697
00698
00699
00700
00701
00702 xcb_void_cookie_t
00703 xcb_composite_release_overlay_window_checked (xcb_connection_t *c ,
00704 xcb_window_t window );
00705
00715
00716
00717
00718
00719
00720
00721
00722
00723
00724
00725 xcb_void_cookie_t
00726 xcb_composite_release_overlay_window (xcb_connection_t *c ,
00727 xcb_window_t window );
00728
00729
00730 #endif
00731