diff options
Diffstat (limited to 'protocols/wlr-layer-shell-unstable-v1.xml')
-rw-r--r-- | protocols/wlr-layer-shell-unstable-v1.xml | 52 |
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> |