Xdg_decoration_unstable_v1_client.Zxdg_toplevel_decoration_v1
Decoration object for a toplevel surface.
The decoration object allows the compositor to toggle server-side window decorations for a toplevel surface. The client can request to switch to another mode.
The xdg_toplevel_decoration object must be destroyed before its xdg_toplevel.
type 'v t = ([ `Zxdg_toplevel_decoration_v1 ], 'v, [ `Client ]) Wayland.Proxy.t
val unset_mode : [< `V1 ] t -> unit
Unset the decoration mode.
Unset the toplevel surface decoration mode. This informs the compositor that the client doesn't prefer a particular decoration mode.
This request has the same semantics as set_mode.
val set_mode :
[< `V1 ] t ->
mode:{Imports}1.Zxdg_toplevel_decoration_v1.Mode.t ->
unit
Set the decoration mode.
Set the toplevel surface decoration mode. This informs the compositor that the client prefers the provided decoration mode.
After requesting a decoration mode, the compositor will respond by emitting an xdg_surface.configure event. The client should then update its content, drawing it without decorations if the received mode is server-side decorations. The client must also acknowledge the configure when committing the new content (see xdg_surface.ack_configure).
The compositor can decide not to use the client's mode and enforce a different mode instead.
Clients whose decoration mode depend on the xdg_toplevel state may send a set_mode request in response to an xdg_surface.configure event and wait for the next xdg_surface.configure event to prevent unwanted state. Such clients are responsible for preventing configure loops and must make sure not to send multiple successive set_mode requests with the same decoration mode.
val destroy : [< `V1 ] t -> unit
Destroy the decoration object.
Switch back to a mode without any server-side decorations at the next commit.
Note: Servers will always want to use v1
.
class virtual +'a v1 : object ... end
Handler for a proxy with version >= 1.