From d5c4349a3fe900d067bfe0cef44cd71925087c0d Mon Sep 17 00:00:00 2001 From: Raphael Robatsch Date: Tue, 26 Oct 2021 18:39:05 +0200 Subject: [PATCH] protocol docs --- .../net-tapesoftware-dwl-wm-unstable-v1.xml | 64 +++++++++++++++---- 1 file changed, 50 insertions(+), 14 deletions(-) diff --git a/protocols/net-tapesoftware-dwl-wm-unstable-v1.xml b/protocols/net-tapesoftware-dwl-wm-unstable-v1.xml index df4c301..518b892 100644 --- a/protocols/net-tapesoftware-dwl-wm-unstable-v1.xml +++ b/protocols/net-tapesoftware-dwl-wm-unstable-v1.xml @@ -27,18 +27,30 @@ - Clients can use this protcol to receive updates of the window manager + This interface is exposed as a global in the wl_registry. + + Clients can use this protocol to receive updates of the window manager state (active tags, active layout, and focused window). Clients can also control this state. + + After binding, the client will receive the available tags and layouts + with the 'tag' and 'layout' events. These can be used in subsequent + dwl_wm_monitor_v1.set_tags/set_layout requests, and to interpret the + dwl_wm_monitor_v1.layout/tag events. + This request indicates that the client will not use the dwl_wm + object any more. Objects that have been created through this instance + are not affected. + Gets a dwl monitor for the specified output. The window manager + state on the output can be controlled using the monitor. @@ -46,12 +58,16 @@ + This event is sent immediately after binding. + A roundtrip after binding guarantees that the client has received all tags. + This event is sent immediately after binding. + A roundtrip after binding guarantees that the client has received all layouts. @@ -59,71 +75,91 @@ + Observes and controls one monitor. + + Events are double-buffered: Clients should cache all events and only + redraw themselves once the 'frame' event is sent. + + Requests are not double-buffered: The compositor will update itself + immediately. - - - + + + + This request indicates that the client is done with this dwl_monitor. + All further requests are ignored. + If 'selected' is nonzero, this monitor is the currently selected one. + Announces the update of a tag. num_clients and focused_client can be + used to draw client indicators. - + - - + + + Announces the update of the selected layout. - + + Announces the update of the selected client. - + + Sent after all other events belonging to the status update has been sent. + Clients should redraw themselves now. - + + Changes are applied immediately. - + - + tags are updated as follows: new_tags = (current_tags AND and_tags) XOR xor_tags + + Changes are applied immediately. - + + Changes are applied immediately. - +