Wayland++  1.0.0
C++ Bindings for Wayland
wayland::server::zxdg_toplevel_decoration_v1_t Class Reference

decoration object for a toplevel surface More...

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

Inherits wayland::server::resource_t.

Public Member Functions

std::function< void()> & on_destroy ()
 destroy the decoration object More...
 
std::function< void(zxdg_toplevel_decoration_v1_mode)> & on_set_mode ()
 set the decoration mode More...
 
std::function< void()> & on_unset_mode ()
 unset the decoration mode More...
 
void configure (zxdg_toplevel_decoration_v1_mode const &mode, bool post=true)
 suggest a surface change More...
 
void post_unconfigured_buffer (std::string const &msg)
 Post error: xdg_toplevel has a buffer attached before configure. More...
 
void post_already_constructed (std::string const &msg)
 Post error: xdg_toplevel already has a decoration object. More...
 
void post_orphaned (std::string const &msg)
 Post error: xdg_toplevel destroyed before the decoration object. More...
 
bool proxy_has_object () const
 Check whether this wrapper actually wraps an object. More...
 
void post_no_memory () const
 
uint32_t get_id () const
 
client_t get_client () const
 
unsigned int get_version () const
 
std::string get_class ()
 

Static Public Attributes

static constexpr std::uint32_t configure_since_version = 1
 Minimum protocol version required for the configure function. More...
 

Detailed Description

decoration object for a toplevel surface

The decoration object allows the compositor to toggle server-side window decorations for a toplevel surface. The client can request to switch to another mode.

The xdg_toplevel_decoration object must be destroyed before its xdg_toplevel.

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

Member Function Documentation

void zxdg_toplevel_decoration_v1_t::configure ( zxdg_toplevel_decoration_v1_mode const &  mode,
bool  post = true 
)

suggest a surface change

Parameters
modethe decoration mode

The configure event asks the client to change its decoration mode. The configured state should not be applied immediately. Clients must send an ack_configure in response to this event. See xdg_surface.configure and xdg_surface.ack_configure for details.

A configure event can be sent at any time. The specified mode must be obeyed by the client.

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

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_toplevel_decoration_v1_t::on_destroy ( )

destroy the decoration object

Switch back to a mode without any server-side decorations at the next commit.

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

std::function< void(zxdg_toplevel_decoration_v1_mode)> & zxdg_toplevel_decoration_v1_t::on_set_mode ( )

set the decoration mode

Parameters
modethe decoration mode

Set the toplevel surface decoration mode. This informs the compositor that the client prefers the provided decoration mode.

After requesting a decoration mode, the compositor will respond by emitting an xdg_surface.configure event. The client should then update its content, drawing it without decorations if the received mode is server-side decorations. The client must also acknowledge the configure when committing the new content (see xdg_surface.ack_configure).

The compositor can decide not to use the client's mode and enforce a different mode instead.

Clients whose decoration mode depend on the xdg_toplevel state may send a set_mode request in response to an xdg_surface.configure event and wait for the next xdg_surface.configure event to prevent unwanted state. Such clients are responsible for preventing configure loops and must make sure not to send multiple successive set_mode requests with the same decoration mode.

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

std::function< void()> & zxdg_toplevel_decoration_v1_t::on_unset_mode ( )

unset the decoration mode

Unset the toplevel surface decoration mode. This informs the compositor that the client doesn't prefer a particular decoration mode.

This request has the same semantics as set_mode.

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

void zxdg_toplevel_decoration_v1_t::post_already_constructed ( std::string const &  msg)

Post error: xdg_toplevel already has a decoration object.

Definition at line 7636 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.

void zxdg_toplevel_decoration_v1_t::post_orphaned ( std::string const &  msg)

Post error: xdg_toplevel destroyed before the decoration object.

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

void zxdg_toplevel_decoration_v1_t::post_unconfigured_buffer ( std::string const &  msg)

Post error: xdg_toplevel has a buffer attached before configure.

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

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

Member Data Documentation

constexpr std::uint32_t wayland::server::zxdg_toplevel_decoration_v1_t::configure_since_version = 1
static

Minimum protocol version required for the configure function.

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


The documentation for this class was generated from the following files: