|  | 
| 25 | 25 |     THIS SOFTWARE. | 
| 26 | 26 |   </copyright> | 
| 27 | 27 | 
 | 
| 28 |  | -  <interface name="zwlr_layer_shell_v1" version="3"> | 
|  | 28 | +  <interface name="zwlr_layer_shell_v1" version="4"> | 
| 29 | 29 |     <description summary="create surfaces that are layers of the desktop"> | 
| 30 | 30 |       Clients can use this interface to assign the surface_layer role to | 
| 31 | 31 |       wl_surfaces. Such surfaces are assigned to a "layer" of the output and | 
|  | 
| 92 | 92 |         are not affected. | 
| 93 | 93 |       </description> | 
| 94 | 94 |     </request> | 
|  | 95 | + | 
|  | 96 | +    <!-- Version 4 additions --> | 
|  | 97 | + | 
|  | 98 | +    <event name="new_output" since="4"> | 
|  | 99 | +      <description summary="notify of a new wl_output"> | 
|  | 100 | +        This event indicates that one or more new outputs have been | 
|  | 101 | +        created. All clients must send an ack_new_output request in response | 
|  | 102 | +        to this event. If a client wishes to create a new layer surface in | 
|  | 103 | +        response to the new output(s), it must make an ack_new_output request | 
|  | 104 | +        with the provided serial after creating any new layer surfaces using | 
|  | 105 | +        the get_layer_surface request and before the first commit on any of | 
|  | 106 | +        the new surfaces. If the client does not wish to create a new layer | 
|  | 107 | +        surface, it should ack immediately. | 
|  | 108 | + | 
|  | 109 | +        This allows the compositor to wait until new layer surfaces are ready | 
|  | 110 | +        before rendering the first frame of new outputs, avoiding a race that | 
|  | 111 | +        could cause imperfect frames. | 
|  | 112 | +      </description> | 
|  | 113 | +      <arg name="serial" type="uint"/> | 
|  | 114 | +    </event> | 
|  | 115 | + | 
|  | 116 | +    <request name="ack_new_output" since="4"> | 
|  | 117 | +      <description summary="ack a new_output event"> | 
|  | 118 | +        This request informs the server that the client has created all | 
|  | 119 | +        layer surfaces it intends to create in response to the new output(s). | 
|  | 120 | +        These new layer surfaces are associated only with this ack sequence | 
|  | 121 | +        and do *not* carry over to following ack sequences should any occur | 
|  | 122 | +        before the first commit on the surfaces. | 
|  | 123 | +      </description> | 
|  | 124 | +      <arg name="serial" type="uint" summary="serial from a new_output event"/> | 
|  | 125 | +    </request> | 
| 95 | 126 |   </interface> | 
| 96 | 127 | 
 | 
| 97 |  | -  <interface name="zwlr_layer_surface_v1" version="3"> | 
|  | 128 | +  <interface name="zwlr_layer_surface_v1" version="4"> | 
| 98 | 129 |     <description summary="layer metadata interface"> | 
| 99 | 130 |       An interface that may be implemented by a wl_surface, for surfaces that | 
| 100 | 131 |       are designed to be rendered as a layer of a stacked desktop-like | 
|  | 
0 commit comments