package oxbow

  1. Overview
  2. Docs
Dynamic window manager for the river Wayland compositor

Install

dune-project
 Dependency

Authors

Maintainers

Sources

v0.1.0.tar.gz
md5=a637acaa0e19046cd65fff733874eb97
sha512=76230cbecd7510de7a05b5d1f335915ef7b6c4aa557d8dbfd23591606618d2cfa25082d17b93f2f4b53a118d1cbf6a80e4ad51cf0f099b4921fb83d6df0c9801

doc/oxbow.river/River/Server/Window_management/River_window_manager_v1/class-v4/index.html

Class River_window_manager_v1.v4Source

Handler for a proxy with version >= 4.

constraint 'a = [< `V4 | `V5 ]
method private virtual on_stop : [> `V4 | `V5 ] t -> unit

Stop sending events.

This request indicates that the client no longer wishes to receive events on this object.

The Wayland protocol is asynchronous, which means the server may send further events until the stop request is processed. The client must wait for a river_window_manager_v1.finished event before destroying this object.

method private virtual on_destroy : [> `V4 | `V5 ] t -> unit

Destroy the river_window_manager_v1 object.

This request should be called after the finished event has been received to complete destruction of the object.

If a client wishes to destroy this object it should send a river_window_manager_v1.stop request and wait for a river_window_manager_v1.finished event. Once the finished event is received it is safe to destroy this object and any other objects created through this interface.

method private virtual on_manage_finish : [> `V4 | `V5 ] t -> unit

Finish a manage sequence.

This request indicates that the client has made all changes to window management state it wishes to include in the current manage sequence and that the server should atomically send these state changes to the windows and continue with the manage sequence.

After sending this request, it is a protocol error for the client to make further changes to window management state until the next manage_start event is received.

See the description of the river_window_manager_v1 interface for a complete overview of the manage/render sequence loop.

method private virtual on_manage_dirty : [> `V4 | `V5 ] t -> unit

Ensure a manage sequence is started.

This request ensures a manage sequence is started and that a manage_start event is sent by the server. If this request is made during an ongoing manage sequence, a new manage sequence will be started as soon as the current one is completed.

The client may want to use this request due to an internal state change that the compositor is not aware of (e.g. a dbus event) which should affect window management or rendering state.

method private virtual on_render_finish : [> `V4 | `V5 ] t -> unit

Finish a render sequence.

This request indicates that the client has made all changes to rendering state it wishes to include in the current manage sequence and that the server should atomically apply and display these state changes to the user.

After sending this request, it is a protocol error for the client to make further changes to rendering state until the next manage_start or render_start event is received, whichever comes first.

See the description of the river_window_manager_v1 interface for a complete overview of the manage/render sequence loop.

method private virtual on_get_shell_surface : [> `V4 | `V5 ] t -> ([ `River_shell_surface_v1 ], 'a, [ `Server ]) Proxy.t -> surface: ([ `Wl_surface ], [> Imports.Wl_surface.versions ], [ `Server ]) Proxy.t -> unit

Assign the river_shell_surface_v1 surface role.

Create a new shell surface for window manager UI and assign the river_shell_surface_v1 role to the surface.

Providing a wl_surface which already has a role or already has a buffer attached or committed is a protocol error.

method private virtual on_exit_session : [> `V4 | `V5 ] t -> unit

Exit the Wayland session.

End the current Wayland session and exit the compositor. All Wayland clients running in the current session, including the window manager, will be disconnected.

Window managers should only make this request if the user explicitly asks to exit the Wayland session, not for example on normal window manager termination.

method min_version : int32
method bind_version : [ `V4 ]