SDL 2.0
The org_kde_kwin_server_decoration_manager interface

Data Structures

struct  org_kde_kwin_server_decoration_manager_listener
 

Macros

#define ORG_KDE_KWIN_SERVER_DECORATION_MANAGER_DEFAULT_MODE_SINCE_VERSION   1
 
#define ORG_KDE_KWIN_SERVER_DECORATION_MANAGER_CREATE_SINCE_VERSION   1
 

Enumerations

enum  org_kde_kwin_server_decoration_manager_mode {
  ORG_KDE_KWIN_SERVER_DECORATION_MANAGER_MODE_NONE = 0 ,
  ORG_KDE_KWIN_SERVER_DECORATION_MANAGER_MODE_CLIENT = 1 ,
  ORG_KDE_KWIN_SERVER_DECORATION_MANAGER_MODE_SERVER = 2
}
 

Functions

static int org_kde_kwin_server_decoration_manager_add_listener (struct org_kde_kwin_server_decoration_manager *org_kde_kwin_server_decoration_manager, const struct org_kde_kwin_server_decoration_manager_listener *listener, void *data)
 
static void org_kde_kwin_server_decoration_manager_set_user_data (struct org_kde_kwin_server_decoration_manager *org_kde_kwin_server_decoration_manager, void *user_data)
 
static voidorg_kde_kwin_server_decoration_manager_get_user_data (struct org_kde_kwin_server_decoration_manager *org_kde_kwin_server_decoration_manager)
 
static void org_kde_kwin_server_decoration_manager_destroy (struct org_kde_kwin_server_decoration_manager *org_kde_kwin_server_decoration_manager)
 
static struct org_kde_kwin_server_decoration * org_kde_kwin_server_decoration_manager_create (struct org_kde_kwin_server_decoration_manager *org_kde_kwin_server_decoration_manager, struct wl_surface *surface)
 

Detailed Description

This interface allows to coordinate whether the server should create a server-side window decoration around a wl_surface representing a shell surface (wl_shell_surface or similar). By announcing support for this interface the server indicates that it supports server side decorations.

Macro Definition Documentation

◆ ORG_KDE_KWIN_SERVER_DECORATION_MANAGER_CREATE_SINCE_VERSION

#define ORG_KDE_KWIN_SERVER_DECORATION_MANAGER_CREATE_SINCE_VERSION   1

◆ ORG_KDE_KWIN_SERVER_DECORATION_MANAGER_DEFAULT_MODE_SINCE_VERSION

#define ORG_KDE_KWIN_SERVER_DECORATION_MANAGER_DEFAULT_MODE_SINCE_VERSION   1

Enumeration Type Documentation

◆ org_kde_kwin_server_decoration_manager_mode

Possible values to use in request_mode and the event mode.

Enumerator
ORG_KDE_KWIN_SERVER_DECORATION_MANAGER_MODE_NONE 

Undecorated: The surface is not decorated at all, neither server nor client-side. An example is a popup surface which should not be decorated.

ORG_KDE_KWIN_SERVER_DECORATION_MANAGER_MODE_CLIENT 

Client-side decoration: The decoration is part of the surface and the client.

ORG_KDE_KWIN_SERVER_DECORATION_MANAGER_MODE_SERVER 

Server-side decoration: The server embeds the surface into a decoration frame.

Definition at line 86 of file org-kde-kwin-server-decoration-manager-client-protocol.h.

86 {
87 /**
88 * Undecorated: The surface is not decorated at all, neither server nor client-side. An example is a popup surface which should not be decorated.
89 */
91 /**
92 * Client-side decoration: The decoration is part of the surface and the client.
93 */
95 /**
96 * Server-side decoration: The server embeds the surface into a decoration frame.
97 */
99};

Function Documentation

◆ org_kde_kwin_server_decoration_manager_add_listener()

static int org_kde_kwin_server_decoration_manager_add_listener ( struct org_kde_kwin_server_decoration_manager *  org_kde_kwin_server_decoration_manager,
const struct org_kde_kwin_server_decoration_manager_listener listener,
void data 
)
inlinestatic

Definition at line 127 of file org-kde-kwin-server-decoration-manager-client-protocol.h.

129{
130 return wl_proxy_add_listener((struct wl_proxy *) org_kde_kwin_server_decoration_manager,
131 (void (**)(void)) listener, data);
132}
GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei const GLvoid * data
Definition: SDL_opengl.h:1974

◆ org_kde_kwin_server_decoration_manager_create()

static struct org_kde_kwin_server_decoration * org_kde_kwin_server_decoration_manager_create ( struct org_kde_kwin_server_decoration_manager *  org_kde_kwin_server_decoration_manager,
struct wl_surface *  surface 
)
inlinestatic

When a client creates a server-side decoration object it indicates that it supports the protocol. The client is supposed to tell the server whether it wants server-side decorations or will provide client-side decorations.

If the client does not create a server-side decoration object for a surface the server interprets this as lack of support for this protocol and considers it as client-side decorated. Nevertheless a client-side decorated surface should use this protocol to indicate to the server that it does not want a server-side deco.

Definition at line 188 of file org-kde-kwin-server-decoration-manager-client-protocol.h.

189{
190 struct wl_proxy *id;
191
192 id = wl_proxy_marshal_flags((struct wl_proxy *) org_kde_kwin_server_decoration_manager,
193 ORG_KDE_KWIN_SERVER_DECORATION_MANAGER_CREATE, &org_kde_kwin_server_decoration_interface, wl_proxy_get_version((struct wl_proxy *) org_kde_kwin_server_decoration_manager), 0, NULL, surface);
194
195 return (struct org_kde_kwin_server_decoration *) id;
196}
GLuint id
#define NULL
Definition: begin_code.h:167
EGLSurface surface
Definition: eglext.h:248
const struct wl_interface org_kde_kwin_server_decoration_interface

References NULL, org_kde_kwin_server_decoration_interface, and ORG_KDE_KWIN_SERVER_DECORATION_MANAGER_CREATE.

◆ org_kde_kwin_server_decoration_manager_destroy()

static void org_kde_kwin_server_decoration_manager_destroy ( struct org_kde_kwin_server_decoration_manager *  org_kde_kwin_server_decoration_manager)
inlinestatic

Definition at line 168 of file org-kde-kwin-server-decoration-manager-client-protocol.h.

169{
170 wl_proxy_destroy((struct wl_proxy *) org_kde_kwin_server_decoration_manager);
171}

◆ org_kde_kwin_server_decoration_manager_get_user_data()

static void * org_kde_kwin_server_decoration_manager_get_user_data ( struct org_kde_kwin_server_decoration_manager *  org_kde_kwin_server_decoration_manager)
inlinestatic

Definition at line 155 of file org-kde-kwin-server-decoration-manager-client-protocol.h.

156{
157 return wl_proxy_get_user_data((struct wl_proxy *) org_kde_kwin_server_decoration_manager);
158}

◆ org_kde_kwin_server_decoration_manager_set_user_data()

static void org_kde_kwin_server_decoration_manager_set_user_data ( struct org_kde_kwin_server_decoration_manager *  org_kde_kwin_server_decoration_manager,
void user_data 
)
inlinestatic

Definition at line 148 of file org-kde-kwin-server-decoration-manager-client-protocol.h.

149{
150 wl_proxy_set_user_data((struct wl_proxy *) org_kde_kwin_server_decoration_manager, user_data);
151}