⚠️ VeridianOS Kernel Documentation - This is low-level kernel code. All functions are unsafe unless explicitly marked otherwise. no_std

Module shell

Module shell 

Source
Expand description

XDG Shell Protocol

Implements xdg_wm_base, xdg_surface, and xdg_toplevel – the standard desktop shell interface for managing windows, popups, and positioners.

Many constants, struct fields, and methods define the complete Wayland XDG shell protocol surface area. Items that are not yet wired into the compositor dispatch path are retained for protocol completeness and will be connected as more of the XDG shell protocol is implemented.

Structs§

ToplevelDecoration
Per-toplevel decoration state negotiated between client and compositor.
XdgShell
Manages the xdg_wm_base protocol state: ping/pong, xdg_surface and xdg_toplevel lifecycle.
XdgSurface
An xdg_surface wraps a wl_surface with desktop shell semantics.
XdgToplevel
An xdg_toplevel represents a standard desktop window.

Enums§

DecorationMode
Server-side vs client-side decoration preference.
WindowState
Window state for an xdg_toplevel.

Constants§

XDG_SURFACE_ACK_CONFIGURE
ack_configure
XDG_SURFACE_CONFIGURE
configure
XDG_SURFACE_DESTROY
destroy
XDG_SURFACE_GET_POPUP
get_popup
XDG_SURFACE_GET_TOPLEVEL
get_toplevel
XDG_SURFACE_SET_WINDOW_GEOMETRY
set_window_geometry
XDG_TOPLEVEL_CLOSE
close
XDG_TOPLEVEL_CONFIGURE
configure
XDG_TOPLEVEL_DESTROY
destroy
XDG_TOPLEVEL_MOVE
move (interactive)
XDG_TOPLEVEL_RESIZE
resize (interactive)
XDG_TOPLEVEL_SET_APP_ID
set_app_id
XDG_TOPLEVEL_SET_FULLSCREEN
set_fullscreen
XDG_TOPLEVEL_SET_MAXIMIZED
set_maximized
XDG_TOPLEVEL_SET_MAX_SIZE
set_max_size
XDG_TOPLEVEL_SET_MINIMIZED
set_minimized
XDG_TOPLEVEL_SET_MIN_SIZE
set_min_size
XDG_TOPLEVEL_SET_PARENT
set_parent
XDG_TOPLEVEL_SET_TITLE
set_title
XDG_TOPLEVEL_STATE_ACTIVATED
activated (focused) state
XDG_TOPLEVEL_STATE_FULLSCREEN
fullscreen state
XDG_TOPLEVEL_STATE_MAXIMIZED
maximized state
XDG_TOPLEVEL_STATE_RESIZING
resizing state
XDG_TOPLEVEL_UNSET_FULLSCREEN
unset_fullscreen
XDG_TOPLEVEL_UNSET_MAXIMIZED
unset_maximized
XDG_WM_BASE_CREATE_POSITIONER
create_positioner
XDG_WM_BASE_DESTROY
destroy
XDG_WM_BASE_GET_XDG_SURFACE
get_xdg_surface
XDG_WM_BASE_PING
ping
XDG_WM_BASE_PONG
pong
ZXDG_DECORATION_MANAGER_V1
Wayland global interface name for decoration manager
ZXDG_DECORATION_MANAGER_V1_DESTROY
destroy
ZXDG_DECORATION_MANAGER_V1_GET_TOPLEVEL_DECORATION
get_toplevel_decoration(id: new_id, toplevel: object)
ZXDG_DECORATION_MANAGER_V1_VERSION
Protocol version
ZXDG_TOPLEVEL_DECORATION_V1_CONFIGURE
configure(mode: uint)
ZXDG_TOPLEVEL_DECORATION_V1_DESTROY
destroy
ZXDG_TOPLEVEL_DECORATION_V1_MODE_CLIENT_SIDE
Decorations are drawn by the client
ZXDG_TOPLEVEL_DECORATION_V1_MODE_SERVER_SIDE
Decorations are drawn by the compositor (server)
ZXDG_TOPLEVEL_DECORATION_V1_SET_MODE
set_mode(mode: uint)
ZXDG_TOPLEVEL_DECORATION_V1_UNSET_MODE
unset_mode

Functions§

init_xdg_shell
Initialize the XDG shell manager.
negotiate_decoration
Negotiate decoration mode for a toplevel.
with_xdg_shell
Execute a closure with read access to the XDG shell.
with_xdg_shell_mut
Execute a closure with mutable access to the XDG shell.