| <protocol name="desktop"> |
| |
| <interface name="desktop_shell" version="1"> |
| <description summary="create desktop widgets and helpers"> |
| Traditional user interfaces can rely on this interface to define the |
| foundations of typical desktops. Currently it's possible to set up |
| background, panels and locking surfaces. |
| </description> |
| |
| <request name="set_background"> |
| <arg name="output" type="object" interface="wl_output"/> |
| <arg name="surface" type="object" interface="wl_surface"/> |
| </request> |
| |
| <request name="set_panel"> |
| <arg name="output" type="object" interface="wl_output"/> |
| <arg name="surface" type="object" interface="wl_surface"/> |
| </request> |
| |
| <request name="set_lock_surface"> |
| <arg name="surface" type="object" interface="wl_surface"/> |
| </request> |
| |
| <request name="unlock"/> |
| |
| <request name="set_grab_surface"> |
| <description summary="set grab surface"> |
| The surface set by this request will receive a fake |
| pointer.enter event during grabs at position 0, 0 and is |
| expected to set an appropriate cursor image as described by |
| the grab_cursor event sent just before the enter event. |
| </description> |
| <arg name="surface" type="object" interface="wl_surface"/> |
| </request> |
| |
| <!-- We'll fold most of wl_shell into this interface and then |
| they'll share the configure event. --> |
| <event name="configure"> |
| <arg name="edges" type="uint"/> |
| <arg name="surface" type="object" interface="wl_surface"/> |
| <arg name="width" type="int"/> |
| <arg name="height" type="int"/> |
| </event> |
| |
| <event name="prepare_lock_surface"> |
| <description summary="tell the client to create, set the lock surface"> |
| Tell the shell we want it to create and set the lock surface, which is |
| a GUI asking the user to unlock the screen. The lock surface is |
| announced with 'set_lock_surface'. Whether or not the shell actually |
| implements locking, it MUST send 'unlock' request to let the normal |
| desktop resume. |
| </description> |
| </event> |
| |
| <event name="grab_cursor"> |
| <description summary="tell client what cursor to show during a grab"> |
| This event will be sent immediately before a fake enter event on the |
| grab surface. |
| </description> |
| <arg name="cursor" type="uint"/> |
| </event> |
| |
| <enum name="cursor"> |
| <entry name="none" value="0"/> |
| |
| <entry name="resize_top" value="1"/> |
| <entry name="resize_bottom" value="2"/> |
| |
| <entry name="arrow" value="3"/> |
| |
| <entry name="resize_left" value="4"/> |
| <entry name="resize_top_left" value="5"/> |
| <entry name="resize_bottom_left" value="6"/> |
| |
| <entry name="move" value="7"/> |
| |
| <entry name="resize_right" value="8"/> |
| <entry name="resize_top_right" value="9"/> |
| <entry name="resize_bottom_right" value="10"/> |
| |
| <entry name="busy" value="11"/> |
| </enum> |
| </interface> |
| |
| <interface name="screensaver" version="1"> |
| <description summary="interface for implementing screensavers"> |
| Only one client can bind this interface at a time. |
| </description> |
| |
| <request name="set_surface"> |
| <description summary="set the surface type as a screensaver"> |
| A screensaver surface is normally hidden, and only visible after an |
| idle timeout. |
| </description> |
| |
| <arg name="surface" type="object" interface="wl_surface"/> |
| <arg name="output" type="object" interface="wl_output"/> |
| </request> |
| |
| </interface> |
| </protocol> |