package wayland

  1. Overview
  2. Docs
Legend:
Library
Module
Module type
Parameter
Class
Class type

Create desktop-style surfaces.

The xdg_wm_base interface is exposed as a global object enabling clients to turn their wl_surfaces into windows in a desktop environment. It defines the basic functionality needed for clients and the compositor to create windows that can be dragged, resized, maximized, etc, as well as creating transient windows such as popup menus.

type 'v t = ([ `Xdg_wm_base ], 'v, [ `Client ]) Wayland.Proxy.t

Version 1, 2, 3

val pong : [< `V1 | `V2 | `V3 ] t -> serial:int32 -> unit

Respond to a ping event.

A client must respond to a ping event with a pong request or the client may be deemed unresponsive. See xdg_wm_base.ping.

val get_xdg_surface : [< `V1 | `V2 | `V3 ] as 'a t -> [[ `Xdg_surface ], 'b, [ `Client ]] Wayland.Proxy.Handler.t -> surface:([ `Wl_surface ], 'c, [ `Client ]) Wayland.Proxy.t -> ([ `Xdg_surface ], 'd, [ `Client ]) Wayland.Proxy.t

Create a shell surface from a surface.

This creates an xdg_surface for the given surface. While xdg_surface itself is not a role, the corresponding surface may only be assigned a role extending xdg_surface, such as xdg_toplevel or xdg_popup.

This creates an xdg_surface for the given surface. An xdg_surface is used as basis to define a role to a given surface, such as xdg_toplevel or xdg_popup. It also manages functionality shared between xdg_surface based surface roles.

See the documentation of xdg_surface for more details about what an xdg_surface is and how it is used.

val create_positioner : [< `V1 | `V2 | `V3 ] as 'a t -> [[ `Xdg_positioner ], 'b, [ `Client ]] Wayland.Proxy.Handler.t -> ([ `Xdg_positioner ], 'c, [ `Client ]) Wayland.Proxy.t

Create a positioner object.

Create a positioner object. A positioner object is used to position surfaces relative to some parent surface. See the interface description and xdg_surface.get_popup for details.

val destroy : [< `V1 | `V2 | `V3 ] t -> unit

Destroy xdg_wm_base.

Destroy this xdg_wm_base object.

Destroying a bound xdg_wm_base object while there are surfaces still alive created by this xdg_wm_base object instance is illegal and will result in a protocol error.

Handlers

Note: Servers will always want to use v1.

class virtual +'a v1 : object ... end

Handler for a proxy with version >= 1.

class virtual +'a v2 : object ... end

Handler for a proxy with version >= 2.

class virtual +'a v3 : object ... end

Handler for a proxy with version >= 3.