XCB Composite API

Composite XCB Protocol Implementation. More...

## Data Structures

struct | xcb_composite_query_version_cookie_t
| xcb_composite_query_version_cookie_t More...
struct | xcb_composite_query_version_request_t
| xcb_composite_query_version_request_t More...
struct | xcb_composite_query_version_reply_t
| xcb_composite_query_version_reply_t More...
struct | xcb_composite_redirect_window_request_t
| xcb_composite_redirect_window_request_t More...
struct | xcb_composite_redirect_subwindows_request_t
| xcb_composite_redirect_subwindows_request_t More...
struct | xcb_composite_unredirect_window_request_t
| xcb_composite_unredirect_window_request_t More...
struct | xcb_composite_unredirect_subwindows_request_t
| xcb_composite_unredirect_subwindows_request_t More...
struct | xcb_composite_create_region_from_border_clip_request_t
| xcb_composite_create_region_from_border_clip_request_t More...
struct | xcb_composite_name_window_pixmap_request_t
| xcb_composite_name_window_pixmap_request_t More...
struct | xcb_composite_get_overlay_window_cookie_t
| xcb_composite_get_overlay_window_cookie_t More...
struct | xcb_composite_get_overlay_window_request_t
| xcb_composite_get_overlay_window_request_t More...
struct | xcb_composite_get_overlay_window_reply_t
| xcb_composite_get_overlay_window_reply_t More...
struct | xcb_composite_release_overlay_window_request_t
| xcb_composite_release_overlay_window_request_t More...

## Macros

#define | XCB_COMPOSITE_MAJOR_VERSION 0
#define | XCB_COMPOSITE_MINOR_VERSION 4
#define | XCB_COMPOSITE_QUERY_VERSION 0
#define | XCB_COMPOSITE_REDIRECT_WINDOW 1
#define | XCB_COMPOSITE_REDIRECT_SUBWINDOWS 2
#define | XCB_COMPOSITE_UNREDIRECT_WINDOW 3
#define | XCB_COMPOSITE_UNREDIRECT_SUBWINDOWS 4
#define | XCB_COMPOSITE_CREATE_REGION_FROM_BORDER_CLIP 5
#define | XCB_COMPOSITE_NAME_WINDOW_PIXMAP 6
#define | XCB_COMPOSITE_GET_OVERLAY_WINDOW 7
#define | XCB_COMPOSITE_RELEASE_OVERLAY_WINDOW 8

## Typedefs

typedef enum xcb_composite_redirect_t | xcb_composite_redirect_t
typedef struct xcb_composite_query_version_cookie_t | xcb_composite_query_version_cookie_t
| xcb_composite_query_version_cookie_t
typedef struct xcb_composite_query_version_request_t | xcb_composite_query_version_request_t
| xcb_composite_query_version_request_t
typedef struct xcb_composite_query_version_reply_t | xcb_composite_query_version_reply_t
| xcb_composite_query_version_reply_t
typedef struct xcb_composite_redirect_window_request_t | xcb_composite_redirect_window_request_t
| xcb_composite_redirect_window_request_t
typedef struct xcb_composite_redirect_subwindows_request_t | xcb_composite_redirect_subwindows_request_t
| xcb_composite_redirect_subwindows_request_t
typedef struct xcb_composite_unredirect_window_request_t | xcb_composite_unredirect_window_request_t
| xcb_composite_unredirect_window_request_t
typedef struct xcb_composite_unredirect_subwindows_request_t | xcb_composite_unredirect_subwindows_request_t
| xcb_composite_unredirect_subwindows_request_t
typedef struct xcb_composite_create_region_from_border_clip_request_t | xcb_composite_create_region_from_border_clip_request_t
| xcb_composite_create_region_from_border_clip_request_t
typedef struct xcb_composite_name_window_pixmap_request_t | xcb_composite_name_window_pixmap_request_t
| xcb_composite_name_window_pixmap_request_t
typedef struct xcb_composite_get_overlay_window_cookie_t | xcb_composite_get_overlay_window_cookie_t
| xcb_composite_get_overlay_window_cookie_t
typedef struct xcb_composite_get_overlay_window_request_t | xcb_composite_get_overlay_window_request_t
| xcb_composite_get_overlay_window_request_t
typedef struct xcb_composite_get_overlay_window_reply_t | xcb_composite_get_overlay_window_reply_t
| xcb_composite_get_overlay_window_reply_t
typedef struct xcb_composite_release_overlay_window_request_t | xcb_composite_release_overlay_window_request_t
| xcb_composite_release_overlay_window_request_t

## Enumerations

enum | xcb_composite_redirect_t { XCB_COMPOSITE_REDIRECT_AUTOMATIC = 0 , XCB_COMPOSITE_REDIRECT_MANUAL = 1 }

## Functions

xcb_composite_query_version_cookie_t | xcb_composite_query_version (xcb_connection_t *c, uint32_t client_major_version, uint32_t client_minor_version)
| Negotiate the version of Composite.
xcb_composite_query_version_cookie_t | xcb_composite_query_version_unchecked (xcb_connection_t *c, uint32_t client_major_version, uint32_t client_minor_version)
| Negotiate the version of Composite.
xcb_composite_query_version_reply_t * | xcb_composite_query_version_reply (xcb_connection_t *c, xcb_composite_query_version_cookie_t cookie, xcb_generic_error_t **e)
xcb_void_cookie_t | xcb_composite_redirect_window_checked (xcb_connection_t *c, xcb_window_t window, uint8_t update)
| Redirect the hierarchy starting at "window" to off-screen storage.
xcb_void_cookie_t | xcb_composite_redirect_window (xcb_connection_t *c, xcb_window_t window, uint8_t update)
| Redirect the hierarchy starting at "window" to off-screen storage.
xcb_void_cookie_t | xcb_composite_redirect_subwindows_checked (xcb_connection_t *c, xcb_window_t window, uint8_t update)
| Redirect all current and future children of ‘window’
xcb_void_cookie_t | xcb_composite_redirect_subwindows (xcb_connection_t *c, xcb_window_t window, uint8_t update)
| Redirect all current and future children of ‘window’
xcb_void_cookie_t | xcb_composite_unredirect_window_checked (xcb_connection_t *c, xcb_window_t window, uint8_t update)
| Terminate redirection of the specified window.
xcb_void_cookie_t | xcb_composite_unredirect_window (xcb_connection_t *c, xcb_window_t window, uint8_t update)
| Terminate redirection of the specified window.
xcb_void_cookie_t | xcb_composite_unredirect_subwindows_checked (xcb_connection_t *c, xcb_window_t window, uint8_t update)
| Terminate redirection of the specified window’s children.
xcb_void_cookie_t | xcb_composite_unredirect_subwindows (xcb_connection_t *c, xcb_window_t window, uint8_t update)
| Terminate redirection of the specified window’s children.
xcb_void_cookie_t | xcb_composite_create_region_from_border_clip_checked (xcb_connection_t *c, xcb_xfixes_region_t region, xcb_window_t window)
xcb_void_cookie_t | xcb_composite_create_region_from_border_clip (xcb_connection_t *c, xcb_xfixes_region_t region, xcb_window_t window)
xcb_void_cookie_t | xcb_composite_name_window_pixmap_checked (xcb_connection_t *c, xcb_window_t window, xcb_pixmap_t pixmap)
xcb_void_cookie_t | xcb_composite_name_window_pixmap (xcb_connection_t *c, xcb_window_t window, xcb_pixmap_t pixmap)
xcb_composite_get_overlay_window_cookie_t | xcb_composite_get_overlay_window (xcb_connection_t *c, xcb_window_t window)
xcb_composite_get_overlay_window_cookie_t | xcb_composite_get_overlay_window_unchecked (xcb_connection_t *c, xcb_window_t window)
xcb_composite_get_overlay_window_reply_t * | xcb_composite_get_overlay_window_reply (xcb_connection_t *c, xcb_composite_get_overlay_window_cookie_t cookie, xcb_generic_error_t **e)
xcb_void_cookie_t | xcb_composite_release_overlay_window_checked (xcb_connection_t *c, xcb_window_t window)
xcb_void_cookie_t | xcb_composite_release_overlay_window (xcb_connection_t *c, xcb_window_t window)

## Variables

xcb_extension_t | xcb_composite_id

## Detailed Description

Composite XCB Protocol Implementation.

## Macro Definition Documentation

## XCB_COMPOSITE_CREATE_REGION_FROM_BORDER_CLIP

#define XCB_COMPOSITE_CREATE_REGION_FROM_BORDER_CLIP 5

Opcode for xcb_composite_create_region_from_border_clip.

Referenced by xcb_composite_create_region_from_border_clip(), and xcb_composite_create_region_from_border_clip_checked().

## XCB_COMPOSITE_GET_OVERLAY_WINDOW

#define XCB_COMPOSITE_GET_OVERLAY_WINDOW 7

Opcode for xcb_composite_get_overlay_window.

Referenced by xcb_composite_get_overlay_window(), and xcb_composite_get_overlay_window_unchecked().

## XCB_COMPOSITE_NAME_WINDOW_PIXMAP

#define XCB_COMPOSITE_NAME_WINDOW_PIXMAP 6

Opcode for xcb_composite_name_window_pixmap.

Referenced by xcb_composite_name_window_pixmap(), and xcb_composite_name_window_pixmap_checked().

## XCB_COMPOSITE_QUERY_VERSION

#define XCB_COMPOSITE_QUERY_VERSION 0

Opcode for xcb_composite_query_version.

Referenced by xcb_composite_query_version(), and xcb_composite_query_version_unchecked().

## XCB_COMPOSITE_REDIRECT_SUBWINDOWS

#define XCB_COMPOSITE_REDIRECT_SUBWINDOWS 2

Opcode for xcb_composite_redirect_subwindows.

Referenced by xcb_composite_redirect_subwindows(), and xcb_composite_redirect_subwindows_checked().

## XCB_COMPOSITE_REDIRECT_WINDOW

#define XCB_COMPOSITE_REDIRECT_WINDOW 1

Opcode for xcb_composite_redirect_window.

Referenced by xcb_composite_redirect_window(), and xcb_composite_redirect_window_checked().

## XCB_COMPOSITE_RELEASE_OVERLAY_WINDOW

#define XCB_COMPOSITE_RELEASE_OVERLAY_WINDOW 8

Opcode for xcb_composite_release_overlay_window.

Referenced by xcb_composite_release_overlay_window(), and xcb_composite_release_overlay_window_checked().

## XCB_COMPOSITE_UNREDIRECT_SUBWINDOWS

#define XCB_COMPOSITE_UNREDIRECT_SUBWINDOWS 4

Opcode for xcb_composite_unredirect_subwindows.

Referenced by xcb_composite_unredirect_subwindows(), and xcb_composite_unredirect_subwindows_checked().

## XCB_COMPOSITE_UNREDIRECT_WINDOW

#define XCB_COMPOSITE_UNREDIRECT_WINDOW 3

Opcode for xcb_composite_unredirect_window.

Referenced by xcb_composite_unredirect_window(), and xcb_composite_unredirect_window_checked().

## Function Documentation

## xcb_composite_create_region_from_border_clip()

xcb_void_cookie_t xcb_composite_create_region_from_border_clip | ( | xcb_connection_t * | c,
|  | xcb_xfixes_region_t | region,
|  | xcb_window_t | window )

Parameters

  c | The connection

Returns
  A cookie

Delivers a request to the X server.

References XCB_COMPOSITE_CREATE_REGION_FROM_BORDER_CLIP.

## xcb_composite_create_region_from_border_clip_checked()

xcb_void_cookie_t xcb_composite_create_region_from_border_clip_checked | ( | xcb_connection_t * | c,
|  | xcb_xfixes_region_t | region,
|  | xcb_window_t | window )

Parameters

  c | The connection

Returns
  A cookie

Delivers a request to the X server.

This form can be used only if the request will not cause a reply to be generated. Any returned error will be saved for handling by xcb_request_check().

References XCB_COMPOSITE_CREATE_REGION_FROM_BORDER_CLIP.

## xcb_composite_get_overlay_window()

xcb_composite_get_overlay_window_cookie_t xcb_composite_get_overlay_window | ( | xcb_connection_t * | c,
|  | xcb_window_t | window )

Parameters

  c | The connection

Returns
  A cookie

Delivers a request to the X server.

References XCB_COMPOSITE_GET_OVERLAY_WINDOW.

## xcb_composite_get_overlay_window_reply()

xcb_composite_get_overlay_window_reply_t * xcb_composite_get_overlay_window_reply | ( | xcb_connection_t * | c,
|  | xcb_composite_get_overlay_window_cookie_t | cookie,
|  | xcb_generic_error_t ** | e )

Return the reply

Parameters

  c | The connection
  cookie | The cookie
  e | The xcb_generic_error_t supplied

Returns the reply of the request asked by

The parameter `e` supplied to this function must be NULL if xcb_composite_get_overlay_window_unchecked(). is used. Otherwise, it stores the error if any.

The returned value must be freed by the caller using free().

## xcb_composite_get_overlay_window_unchecked()

xcb_composite_get_overlay_window_cookie_t xcb_composite_get_overlay_window_unchecked | ( | xcb_connection_t * | c,
|  | xcb_window_t | window )

Parameters

  c | The connection

Returns
  A cookie

Delivers a request to the X server.

This form can be used only if the request will cause a reply to be generated. Any returned error will be placed in the event queue.

References XCB_COMPOSITE_GET_OVERLAY_WINDOW.

## xcb_composite_name_window_pixmap()

xcb_void_cookie_t xcb_composite_name_window_pixmap | ( | xcb_connection_t * | c,
|  | xcb_window_t | window,
|  | xcb_pixmap_t | pixmap )

Parameters

  c | The connection

Returns
  A cookie

Delivers a request to the X server.

References XCB_COMPOSITE_NAME_WINDOW_PIXMAP.

## xcb_composite_name_window_pixmap_checked()

xcb_void_cookie_t xcb_composite_name_window_pixmap_checked | ( | xcb_connection_t * | c,
|  | xcb_window_t | window,
|  | xcb_pixmap_t | pixmap )

Parameters

  c | The connection

Returns
  A cookie

Delivers a request to the X server.

This form can be used only if the request will not cause a reply to be generated. Any returned error will be saved for handling by xcb_request_check().

References XCB_COMPOSITE_NAME_WINDOW_PIXMAP.

## xcb_composite_query_version()

xcb_composite_query_version_cookie_t xcb_composite_query_version | ( | xcb_connection_t * | c,
|  | uint32_t | client_major_version,
|  | uint32_t | client_minor_version )

Negotiate the version of Composite.

Parameters

  c | The connection
  client_major_version | The major version supported by the client.
  client_minor_version | The minor version supported by the client.

Returns
  A cookie

This negotiates the version of the Composite extension. It must be precede all other requests using Composite. Failure to do so will cause a BadRequest error.

References XCB_COMPOSITE_QUERY_VERSION.

## xcb_composite_query_version_reply()

xcb_composite_query_version_reply_t * xcb_composite_query_version_reply | ( | xcb_connection_t * | c,
|  | xcb_composite_query_version_cookie_t | cookie,
|  | xcb_generic_error_t ** | e )

Return the reply

Parameters

  c | The connection
  cookie | The cookie
  e | The xcb_generic_error_t supplied

Returns the reply of the request asked by

The parameter `e` supplied to this function must be NULL if xcb_composite_query_version_unchecked(). is used. Otherwise, it stores the error if any.

The returned value must be freed by the caller using free().

## xcb_composite_query_version_unchecked()

xcb_composite_query_version_cookie_t xcb_composite_query_version_unchecked | ( | xcb_connection_t * | c,
|  | uint32_t | client_major_version,
|  | uint32_t | client_minor_version )

Negotiate the version of Composite.

Parameters

  c | The connection
  client_major_version | The major version supported by the client.
  client_minor_version | The minor version supported by the client.

Returns
  A cookie

This negotiates the version of the Composite extension. It must be precede all other requests using Composite. Failure to do so will cause a BadRequest error.

This form can be used only if the request will cause a reply to be generated. Any returned error will be placed in the event queue.

References XCB_COMPOSITE_QUERY_VERSION.

## xcb_composite_redirect_subwindows()

xcb_void_cookie_t xcb_composite_redirect_subwindows | ( | xcb_connection_t * | c,
|  | xcb_window_t | window,
|  | uint8_t | update )

Redirect all current and future children of ‘window’

Parameters

  c | The connection
  window | The root of the hierarchy to redirect to off-screen storage.
  update | A bitmask of xcb_composite_redirect_t values.
  update | Whether contents are automatically mirrored to the parent window. If one client already specifies an update type of Manual, any attempt by another to specify a mode of Manual so will result in an Access error.

Returns
  A cookie

Hierarchies starting at all current and future children of window will be redirected as in RedirectWindow. If update is Manual, then painting of the window background during window manipulation and ClearArea requests is inhibited.

References XCB_COMPOSITE_REDIRECT_SUBWINDOWS.

## xcb_composite_redirect_subwindows_checked()

xcb_void_cookie_t xcb_composite_redirect_subwindows_checked | ( | xcb_connection_t * | c,
|  | xcb_window_t | window,
|  | uint8_t | update )

Redirect all current and future children of ‘window’

Parameters

  c | The connection
  window | The root of the hierarchy to redirect to off-screen storage.
  update | A bitmask of xcb_composite_redirect_t values.
  update | Whether contents are automatically mirrored to the parent window. If one client already specifies an update type of Manual, any attempt by another to specify a mode of Manual so will result in an Access error.

Returns
  A cookie

Hierarchies starting at all current and future children of window will be redirected as in RedirectWindow. If update is Manual, then painting of the window background during window manipulation and ClearArea requests is inhibited.

This form can be used only if the request will not cause a reply to be generated. Any returned error will be saved for handling by xcb_request_check().

References XCB_COMPOSITE_REDIRECT_SUBWINDOWS.

## xcb_composite_redirect_window()

xcb_void_cookie_t xcb_composite_redirect_window | ( | xcb_connection_t * | c,
|  | xcb_window_t | window,
|  | uint8_t | update )

Redirect the hierarchy starting at "window" to off-screen storage.

Parameters

  c | The connection
  window | The root of the hierarchy to redirect to off-screen storage.
  update | A bitmask of xcb_composite_redirect_t values.
  update | Whether contents are automatically mirrored to the parent window. If one client already specifies an update type of Manual, any attempt by another to specify a mode of Manual so will result in an Access error.

Returns
  A cookie

The hierarchy starting at 'window' is directed to off-screen storage. When all clients enabling redirection terminate, the redirection will automatically be disabled.

The root window may not be redirected. Doing so results in a Match error.

References XCB_COMPOSITE_REDIRECT_WINDOW.

## xcb_composite_redirect_window_checked()

xcb_void_cookie_t xcb_composite_redirect_window_checked | ( | xcb_connection_t * | c,
|  | xcb_window_t | window,
|  | uint8_t | update )

Redirect the hierarchy starting at "window" to off-screen storage.

Parameters

  c | The connection
  window | The root of the hierarchy to redirect to off-screen storage.
  update | A bitmask of xcb_composite_redirect_t values.
  update | Whether contents are automatically mirrored to the parent window. If one client already specifies an update type of Manual, any attempt by another to specify a mode of Manual so will result in an Access error.

Returns
  A cookie

The hierarchy starting at 'window' is directed to off-screen storage. When all clients enabling redirection terminate, the redirection will automatically be disabled.

The root window may not be redirected. Doing so results in a Match error.

This form can be used only if the request will not cause a reply to be generated. Any returned error will be saved for handling by xcb_request_check().

References XCB_COMPOSITE_REDIRECT_WINDOW.

## xcb_composite_release_overlay_window()

xcb_void_cookie_t xcb_composite_release_overlay_window | ( | xcb_connection_t * | c,
|  | xcb_window_t | window )

Parameters

  c | The connection

Returns
  A cookie

Delivers a request to the X server.

References XCB_COMPOSITE_RELEASE_OVERLAY_WINDOW.

## xcb_composite_release_overlay_window_checked()

xcb_void_cookie_t xcb_composite_release_overlay_window_checked | ( | xcb_connection_t * | c,
|  | xcb_window_t | window )

Parameters

  c | The connection

Returns
  A cookie

Delivers a request to the X server.

This form can be used only if the request will not cause a reply to be generated. Any returned error will be saved for handling by xcb_request_check().

References XCB_COMPOSITE_RELEASE_OVERLAY_WINDOW.

## xcb_composite_unredirect_subwindows()

xcb_void_cookie_t xcb_composite_unredirect_subwindows | ( | xcb_connection_t * | c,
|  | xcb_window_t | window,
|  | uint8_t | update )

Terminate redirection of the specified window’s children.

Parameters

  c | The connection
  window | The window to terminate redirection of. Must have previously been selected for sub-redirection by the current client, or a Value error results.
  update | A bitmask of xcb_composite_redirect_t values.
  update | The update type passed to RedirectSubWindows. If this does not match the previously requested update type, a Value error results.

Returns
  A cookie

Redirection of all children of window will be terminated.

References XCB_COMPOSITE_UNREDIRECT_SUBWINDOWS.

## xcb_composite_unredirect_subwindows_checked()

xcb_void_cookie_t xcb_composite_unredirect_subwindows_checked | ( | xcb_connection_t * | c,
|  | xcb_window_t | window,
|  | uint8_t | update )

Terminate redirection of the specified window’s children.

Parameters

  c | The connection
  window | The window to terminate redirection of. Must have previously been selected for sub-redirection by the current client, or a Value error results.
  update | A bitmask of xcb_composite_redirect_t values.
  update | The update type passed to RedirectSubWindows. If this does not match the previously requested update type, a Value error results.

Returns
  A cookie

Redirection of all children of window will be terminated.

This form can be used only if the request will not cause a reply to be generated. Any returned error will be saved for handling by xcb_request_check().

References XCB_COMPOSITE_UNREDIRECT_SUBWINDOWS.

## xcb_composite_unredirect_window()

xcb_void_cookie_t xcb_composite_unredirect_window | ( | xcb_connection_t * | c,
|  | xcb_window_t | window,
|  | uint8_t | update )

Terminate redirection of the specified window.

Parameters

  c | The connection
  window | The window to terminate redirection of. Must be redirected by the current client, or a Value error results.
  update | A bitmask of xcb_composite_redirect_t values.
  update | The update type passed to RedirectWindows. If this does not match the previously requested update type, a Value error results.

Returns
  A cookie

Redirection of the specified window will be terminated. This cannot be used if the window was redirected with RedirectSubwindows.

References XCB_COMPOSITE_UNREDIRECT_WINDOW.

## xcb_composite_unredirect_window_checked()

xcb_void_cookie_t xcb_composite_unredirect_window_checked | ( | xcb_connection_t * | c,
|  | xcb_window_t | window,
|  | uint8_t | update )

Terminate redirection of the specified window.

Parameters

  c | The connection
  window | The window to terminate redirection of. Must be redirected by the current client, or a Value error results.
  update | A bitmask of xcb_composite_redirect_t values.
  update | The update type passed to RedirectWindows. If this does not match the previously requested update type, a Value error results.

Returns
  A cookie

Redirection of the specified window will be terminated. This cannot be used if the window was redirected with RedirectSubwindows.

This form can be used only if the request will not cause a reply to be generated. Any returned error will be saved for handling by xcb_request_check().

References XCB_COMPOSITE_UNREDIRECT_WINDOW.