wayland::server::shell_t(3)
π NAME π
wayland::server::shell_t β okay bestie, this one's the create desktop-style surfaces thing β¨ (yes, the manpage you're reading is wayland::server::shell_t(3), and yes it's a whole vibe, buckle up π)
πΈ SYNOPSIS πΈ
Pull it in like this, no cap:
#include <wayland-server-protocol.hpp>
π«Ά Public Member Functions π«Ά
Here's the whole squad, literally each one, no gatekeeping π
std::function< void(shell_surface_t, surface_t)> & on_get_shell_surface ()β create a shell surface from a surfacevoid post_role (std::string const &msg)β Post error: given wl_surface has another role.bool proxy_has_object () constβ Check whether this wrapper actually wraps an object.void post_no_memory () constuint32_t get_id () constclient_t get_client () constunsigned int get_version () conststd::string get_class ()
β¨ Detailed Description β¨
create desktop-style surfaces π₯
So this interface? It's implemented by servers that provide desktop-style user interfaces. Periodt.
It allows clients to associate a wl_shell_surface with a basic surface. Cute, right? πΈ
β οΈ Note! This protocol is deprecated and not intended for production use π For desktop-style user interfaces, use xdg_shell. Compositors and clients should not implement this interface. Like, don't do it, bestie. Not the move. π
Definition at line 1669 of file wayland-server-protocol.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. That's it, that's the whole thing π
π¦ 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(shell_surface_t, surface_t)> & shell_t::on_get_shell_surface () π
create a shell surface from a surface β¨ main character behavior fr fr
Parameters
- id β shell surface to create
- surface β surface to be given the shell surface role
Create a shell surface for an existing surface. This gives the wl_surface the role of a shell surface. If the wl_surface already has another role, it raises a protocol error π¨ (yeah, it will absolutely call you out)
Only one shell surface can be associated with a given surface. One. Singular. Don't be greedy π
Definition at line 2220 of file wayland-server-protocol.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 certain request of the client, this function can be called to notify the client of this circumstance. Like a lil heads-up: bestie, we're out of RAM π
π§ void shell_t::post_role (std::string const & msg) π§
Post error: given wl_surface has another role.
Definition at line 2226 of file wayland-server-protocol.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. Vibe check for your wrapper, basically π
π Author π
Generated automatically by Doxygen for Wayland++ from the source code. (not a human, just a robot doing its lil thing π€π)
Okay that's the whole page! β¨ Signing off with the deets: Version 1.0.1, dated Fri Mar 27 2026 13:15:00 π«Ά Go forth and please use xdg_shell instead, ily, bye! π
ππ¦
π¦ where this page comes from
- ubuntu stonking: waylandpp-dev 1.0.1-2 Β· BSD-2-Clause
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms