aboutsummaryrefslogtreecommitdiffstats
path: root/protocols/wlr-layer-shell-unstable-v1.xml
diff options
context:
space:
mode:
Diffstat (limited to 'protocols/wlr-layer-shell-unstable-v1.xml')
-rw-r--r--protocols/wlr-layer-shell-unstable-v1.xml52
1 files changed, 39 insertions, 13 deletions
diff --git a/protocols/wlr-layer-shell-unstable-v1.xml b/protocols/wlr-layer-shell-unstable-v1.xml
index f29eb879..fa67001d 100644
--- a/protocols/wlr-layer-shell-unstable-v1.xml
+++ b/protocols/wlr-layer-shell-unstable-v1.xml
@@ -1,5 +1,5 @@
1<?xml version="1.0" encoding="UTF-8"?> 1<?xml version="1.0" encoding="UTF-8"?>
2<protocol name="wlr_layer_shell_v1_unstable_v1"> 2<protocol name="wlr_layer_shell_unstable_v1">
3 <copyright> 3 <copyright>
4 Copyright © 2017 Drew DeVault 4 Copyright © 2017 Drew DeVault
5 5
@@ -25,7 +25,7 @@
25 THIS SOFTWARE. 25 THIS SOFTWARE.
26 </copyright> 26 </copyright>
27 27
28 <interface name="zwlr_layer_shell_v1" version="1"> 28 <interface name="zwlr_layer_shell_v1" version="3">
29 <description summary="create surfaces that are layers of the desktop"> 29 <description summary="create surfaces that are layers of the desktop">
30 Clients can use this interface to assign the surface_layer role to 30 Clients can use this interface to assign the surface_layer role to
31 wl_surfaces. Such surfaces are assigned to a "layer" of the output and 31 wl_surfaces. Such surfaces are assigned to a "layer" of the output and
@@ -82,17 +82,27 @@
82 <entry name="top" value="2"/> 82 <entry name="top" value="2"/>
83 <entry name="overlay" value="3"/> 83 <entry name="overlay" value="3"/>
84 </enum> 84 </enum>
85
86 <!-- Version 3 additions -->
87
88 <request name="destroy" type="destructor" since="3">
89 <description summary="destroy the layer_shell object">
90 This request indicates that the client will not use the layer_shell
91 object any more. Objects that have been created through this instance
92 are not affected.
93 </description>
94 </request>
85 </interface> 95 </interface>
86 96
87 <interface name="zwlr_layer_surface_v1" version="1"> 97 <interface name="zwlr_layer_surface_v1" version="3">
88 <description summary="layer metadata interface"> 98 <description summary="layer metadata interface">
89 An interface that may be implemented by a wl_surface, for surfaces that 99 An interface that may be implemented by a wl_surface, for surfaces that
90 are designed to be rendered as a layer of a stacked desktop-like 100 are designed to be rendered as a layer of a stacked desktop-like
91 environment. 101 environment.
92 102
93 Layer surface state (size, anchor, exclusive zone, margin, interactivity) 103 Layer surface state (layer, size, anchor, exclusive zone,
94 is double-buffered, and will be applied at the time wl_surface.commit of 104 margin, interactivity) is double-buffered, and will be applied at the
95 the corresponding wl_surface is called. 105 time wl_surface.commit of the corresponding wl_surface is called.
96 </description> 106 </description>
97 107
98 <request name="set_size"> 108 <request name="set_size">
@@ -115,7 +125,7 @@
115 <request name="set_anchor"> 125 <request name="set_anchor">
116 <description summary="configures the anchor point of the surface"> 126 <description summary="configures the anchor point of the surface">
117 Requests that the compositor anchor the surface to the specified edges 127 Requests that the compositor anchor the surface to the specified edges
118 and corners. If two orthoginal edges are specified (e.g. 'top' and 128 and corners. If two orthogonal edges are specified (e.g. 'top' and
119 'left'), then the anchor point will be the intersection of the edges 129 'left'), then the anchor point will be the intersection of the edges
120 (e.g. the top left corner of the output); otherwise the anchor point 130 (e.g. the top left corner of the output); otherwise the anchor point
121 will be centered on that edge, or in the center if none is specified. 131 will be centered on that edge, or in the center if none is specified.
@@ -127,19 +137,24 @@
127 137
128 <request name="set_exclusive_zone"> 138 <request name="set_exclusive_zone">
129 <description summary="configures the exclusive geometry of this surface"> 139 <description summary="configures the exclusive geometry of this surface">
130 Requests that the compositor avoids occluding an area of the surface 140 Requests that the compositor avoids occluding an area with other
131 with other surfaces. The compositor's use of this information is 141 surfaces. The compositor's use of this information is
132 implementation-dependent - do not assume that this region will not 142 implementation-dependent - do not assume that this region will not
133 actually be occluded. 143 actually be occluded.
134 144
135 A positive value is only meaningful if the surface is anchored to an 145 A positive value is only meaningful if the surface is anchored to one
136 edge, rather than a corner. The zone is the number of surface-local 146 edge or an edge and both perpendicular edges. If the surface is not
137 coordinates from the edge that are considered exclusive. 147 anchored, anchored to only two perpendicular edges (a corner), anchored
148 to only two parallel edges or anchored to all edges, a positive value
149 will be treated the same as zero.
150
151 A positive zone is the distance from the edge in surface-local
152 coordinates to consider exclusive.
138 153
139 Surfaces that do not wish to have an exclusive zone may instead specify 154 Surfaces that do not wish to have an exclusive zone may instead specify
140 how they should interact with surfaces that do. If set to zero, the 155 how they should interact with surfaces that do. If set to zero, the
141 surface indicates that it would like to be moved to avoid occluding 156 surface indicates that it would like to be moved to avoid occluding
142 surfaces with a positive excluzive zone. If set to -1, the surface 157 surfaces with a positive exclusive zone. If set to -1, the surface
143 indicates that it would not like to be moved to accommodate for other 158 indicates that it would not like to be moved to accommodate for other
144 surfaces, and the compositor should extend it all the way to the edges 159 surfaces, and the compositor should extend it all the way to the edges
145 it is anchored to. 160 it is anchored to.
@@ -281,5 +296,16 @@
281 <entry name="left" value="4" summary="the left edge of the anchor rectangle"/> 296 <entry name="left" value="4" summary="the left edge of the anchor rectangle"/>
282 <entry name="right" value="8" summary="the right edge of the anchor rectangle"/> 297 <entry name="right" value="8" summary="the right edge of the anchor rectangle"/>
283 </enum> 298 </enum>
299
300 <!-- Version 2 additions -->
301
302 <request name="set_layer" since="2">
303 <description summary="change the layer of the surface">
304 Change the layer that the surface is rendered on.
305
306 Layer is double-buffered, see wl_surface.commit.
307 </description>
308 <arg name="layer" type="uint" enum="zwlr_layer_shell_v1.layer" summary="layer to move this surface to"/>
309 </request>
284 </interface> 310 </interface>
285</protocol> 311</protocol>