wl_buffer_listener Struct Reference
The wl_buffer interface

`#include <wayland-client-protocol.h>`

## Data Fields

void(* | release )(void *data, struct wl_buffer *wl_buffer)

## Detailed Description

Definition at line 1681 of file wayland-client-protocol.h.

## Field Documentation

## release

void(* wl_buffer_listener::release) (void *data, struct wl_buffer *wl_buffer)

compositor releases buffer

Sent when this wl_buffer is no longer used by the compositor. The client is now free to reuse or destroy this buffer and its backing storage.

If a client receives a release event before the frame callback requested in the same wl_surface.commit that attaches this wl_buffer to a surface, then the client is immediately free to reuse the buffer and its backing storage, and does not need a second buffer for the next surface content update. Typically this is possible, when the compositor maintains a copy of the wl_surface contents, e.g. as a GL texture. This is an important optimization for GL(ES) compositors with wl_shm clients.

Definition at line 1698 of file wayland-client-protocol.h.

The documentation for this struct was generated from the following file:

- gen/wayland-client-protocol.h