---
name: "wayland_server_zxdg_decoration_manager_v1_t"
section: "3"
platform: "linux"
package: "waylandpp-dev"
version: "1.0.0-6+b2"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/wayland_server_zxdg_decoration_manager_v1_t"
---

# wayland\_server\_zxdg\_decoration\_manager\_v1\_t(3)

window decoration manager

## NAME

wayland::server::zxdg\_decoration\_manager\_v1\_t - window decoration manager

## SYNOPSIS

`#include <wayland-server-protocol-unstable.hpp>`

Inherits wayland::server::resource\_t.

### Public Member Functions

std::function\< void()\> & **on\_destroy** ()\
 destroy the decoration manager object  std::function\< void(**zxdg\_toplevel\_decoration\_v1\_t**, **xdg\_toplevel\_t**)\> & **on\_get\_toplevel\_decoration** ()\
 create a new toplevel decoration object  bool **proxy\_has\_object** () const\
 Check whether this wrapper actually wraps an object.  void **post\_no\_memory** () const\
 uint32\_t **get\_id** () const\
 client\_t **get\_client** () const\
 unsigned int **get\_version** () const\
 std::string **get\_class** ()\

## Detailed Description

window decoration manager

This interface allows a compositor to announce support for server-side decorations.

A window decoration is a set of window controls as deemed appropriate by the party managing them, such as user interface components used to move, resize and change a window's state.

A client can use this protocol to request being decorated by a supporting compositor.

If compositor and client do not negotiate the use of a server-side decoration using this protocol, clients continue to self-decorate as they see fit.

Warning! The protocol described in this file is experimental and backward incompatible changes may be made. Backward compatible changes may be added together with the corresponding interface version bump. Backward incompatible changes are done by bumping the version number in the protocol and interface names and resetting the interface version. Once the protocol is to be declared stable, the 'z' prefix and the version number in the protocol and interface names are removed and the interface version number is reset.

Definition at line **7746** of file **wayland-server-protocol-unstable.hpp**.

## Member Function Documentation

### std::string wayland::server::resource\_t::get\_class ()` [inherited]`

Retrieve the interface name (class) of a resource object.

**Returns**

Interface name of the resource object.

### client\_t wayland::server::resource\_t::get\_client () const` [inherited]`

Get the associated client

**Returns**

the client that owns the resource.

### uint32\_t wayland::server::resource\_t::get\_id () const` [inherited]`

Get the internal ID of the resource

**Returns**

the internal ID of the resource

### unsigned int wayland::server::resource\_t::get\_version () const` [inherited]`

Get interface version

**Returns**

Interface version this resource has been constructed with.

### std::function\< void()\> & zxdg\_decoration\_manager\_v1\_t::on\_destroy ()

destroy the decoration manager object Destroy the decoration manager. This doesn't destroy objects created with the manager.

Definition at line **7562** of file **wayland-server-protocol-unstable.cpp**.

### std::function\< void(zxdg\_toplevel\_decoration\_v1\_t, xdg\_toplevel\_t)\> & zxdg\_decoration\_manager\_v1\_t::on\_get\_toplevel\_decoration ()

create a new toplevel decoration object

**Parameters**

*id* \
 *toplevel*

Create a new decoration object associated with the given toplevel.

Creating an xdg\_toplevel\_decoration from an xdg\_toplevel which has a buffer attached or committed is a client error, and any attempts by a client to attach or manipulate a buffer prior to the first xdg\_toplevel\_decoration.configure event must also be treated as errors.

Definition at line **7568** of file **wayland-server-protocol-unstable.cpp**.

### void wayland::server::resource\_t::post\_no\_memory () const` [inherited]`

Post 'not enough memory' error to the client

If the compositor has not enough memory to fulfill a certail request of the client, this function can be called to notify the client of this circumstance.

### bool wayland::server::resource\_t::proxy\_has\_object () const` [inherited]`

Check whether this wrapper actually wraps an object.

**Returns**

true if there is an underlying object, false if this wrapper is empty

## Author

Generated automatically by Doxygen for Wayland++ from the source code.
