Class Xdg_wm_base.v1

Handler for a proxy with version >= 1.

constraint 'a = [< `V1 | `V2 | `V3 | `V4 | `V5 | `V6 ]
method private virtual on_destroy : [> `V1 | `V2 | `V3 | `V4 | `V5 | `V6 ] 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 defunct_surfaces error.

method private virtual on_create_positioner : [> `V1 | `V2 | `V3 | `V4 | `V5 | `V6 ] t -> ([ `Xdg_positioner ], 'b, [ `Server ]) {Proxy}2.t -> unit

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.

method private virtual on_get_xdg_surface : [> `V1 | `V2 | `V3 | `V4 | `V5 | `V6 ] t -> ([ `Xdg_surface ], 'b, [ `Server ]) {Proxy}2.t -> surface: ([ `Wl_surface ], [> {Imports}1.Wl_surface.versions ], [ `Server ]) {Proxy}2.t -> unit

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. It is illegal to create an xdg_surface for a wl_surface which already has an assigned role and this will result in a role error.

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.

method private virtual on_pong : [> `V1 | `V2 | `V3 | `V4 | `V5 | `V6 ] 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 and xdg_wm_base.error.unresponsive.

method min_version : int32
method bind_version : [ `V1 ]