1 <protocol name="desktop">
3 <interface name="desktop_shell" version="1">
4 <description summary="create desktop widgets and helpers">
5 Traditional user interfaces can rely on this interface to define the
6 foundations of typical desktops. Currently it's possible to set up
7 background, panels and locking surfaces.
10 <request name="set_background">
11 <arg name="output" type="object" interface="wl_output"/>
12 <arg name="surface" type="object" interface="wl_surface"/>
15 <request name="set_panel">
16 <arg name="output" type="object" interface="wl_output"/>
17 <arg name="surface" type="object" interface="wl_surface"/>
20 <request name="set_lock_surface">
21 <arg name="surface" type="object" interface="wl_surface"/>
24 <request name="unlock"/>
26 <request name="set_busy_surface">
27 <arg name="surface" type="object" interface="wl_surface"/>
30 <!-- We'll fold most of wl_shell into this interface and then
31 they'll share the configure event. -->
32 <event name="configure">
33 <arg name="edges" type="uint"/>
34 <arg name="surface" type="object" interface="wl_surface"/>
35 <arg name="width" type="int"/>
36 <arg name="height" type="int"/>
39 <event name="prepare_lock_surface">
40 <description summary="tell the client to create, set the lock surface">
41 Tell the shell we want it to create and set the lock surface, which is
42 a GUI asking the user to unlock the screen. The lock surface is
43 announced with 'set_lock_surface'. Whether or not the shell actually
44 implements locking, it MUST send 'unlock' request to let the normal
50 <interface name="screensaver" version="1">
51 <description summary="interface for implementing screensavers">
52 Only one client can bind this interface at a time.
55 <request name="set_surface">
56 <description summary="set the surface type as a screensaver">
57 A screensaver surface is normally hidden, and only visible after an
61 <arg name="surface" type="object" interface="wl_surface"/>
62 <arg name="output" type="object" interface="wl_output"/>
67 <interface name="input_panel" version="1">
68 <description summary="interface for implementing keyboards">
69 Only one client can bind this interface at a time.
72 <request name="set_surface">
73 <description summary="set the surface type as a keyboard">
74 A keybaord surface is only shown, when a text model is active
77 <arg name="surface" type="object" interface="wl_surface"/>
78 <arg name="output" type="object" interface="wl_output"/>