blob: 2b6afbd21b7fe82a20159e629f2923a195b67513 [file] [log] [blame]
Kristian Høgsberg75840622011-09-06 13:48:16 -04001<protocol name="desktop">
2
3 <interface name="desktop_shell" version="1">
Tiago Vignatti7bef0662012-04-16 17:31:40 +03004 <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.
8 </description>
9
Kristian Høgsberg75840622011-09-06 13:48:16 -040010 <request name="set_background">
Benjamin Franzked0f79ab2011-11-22 12:43:52 +010011 <arg name="output" type="object" interface="wl_output"/>
Kristian Høgsberg962342c2012-06-26 16:29:50 -040012 <arg name="surface" type="object" interface="wl_surface"/>
Kristian Høgsberg75840622011-09-06 13:48:16 -040013 </request>
14
15 <request name="set_panel">
Benjamin Franzked0f79ab2011-11-22 12:43:52 +010016 <arg name="output" type="object" interface="wl_output"/>
Kristian Høgsbergaf7b1ff2012-06-26 21:19:23 -040017 <arg name="surface" type="object" interface="wl_surface"/>
Kristian Høgsberg75840622011-09-06 13:48:16 -040018 </request>
19
Pekka Paalanen9ef3e012011-11-15 13:34:48 +020020 <request name="set_lock_surface">
Kristian Høgsberg730c94d2012-06-26 21:44:35 -040021 <arg name="surface" type="object" interface="wl_surface"/>
Pekka Paalanen9ef3e012011-11-15 13:34:48 +020022 </request>
23
24 <request name="unlock"/>
25
Ander Conselvan de Oliveirab9d2a0f2012-06-28 18:08:05 +030026 <request name="set_grab_surface">
27 <description summary="set grab surface">
28 The surface set by this request will receive a fake
29 pointer.enter event during grabs at position 0, 0 and is
30 expected to set an appropriate cursor image as described by
31 the grab_cursor event sent just before the enter event.
32 </description>
Kristian Høgsbergd56bd902012-06-05 09:58:51 -040033 <arg name="surface" type="object" interface="wl_surface"/>
34 </request>
35
Kristian Høgsberg75840622011-09-06 13:48:16 -040036 <!-- We'll fold most of wl_shell into this interface and then
37 they'll share the configure event. -->
38 <event name="configure">
Kristian Høgsberg75840622011-09-06 13:48:16 -040039 <arg name="edges" type="uint"/>
Kristian Høgsberg962342c2012-06-26 16:29:50 -040040 <arg name="surface" type="object" interface="wl_surface"/>
Kristian Høgsberg75840622011-09-06 13:48:16 -040041 <arg name="width" type="int"/>
42 <arg name="height" type="int"/>
43 </event>
44
Tiago Vignatti7bef0662012-04-16 17:31:40 +030045 <event name="prepare_lock_surface">
46 <description summary="tell the client to create, set the lock surface">
47 Tell the shell we want it to create and set the lock surface, which is
48 a GUI asking the user to unlock the screen. The lock surface is
49 announced with 'set_lock_surface'. Whether or not the shell actually
50 implements locking, it MUST send 'unlock' request to let the normal
51 desktop resume.
52 </description>
53 </event>
Ander Conselvan de Oliveirab9d2a0f2012-06-28 18:08:05 +030054
55 <event name="grab_cursor">
56 <description summary="tell client what cursor to show during a grab">
57 This event will be sent immediately before a fake enter event on the
58 grab surface.
59 </description>
60 <arg name="cursor" type="uint"/>
61 </event>
62
63 <enum name="cursor">
64 <entry name="none" value="0"/>
65
66 <entry name="resize_top" value="1"/>
67 <entry name="resize_bottom" value="2"/>
68
69 <entry name="arrow" value="3"/>
70
71 <entry name="resize_left" value="4"/>
72 <entry name="resize_top_left" value="5"/>
73 <entry name="resize_bottom_left" value="6"/>
74
75 <entry name="move" value="7"/>
76
77 <entry name="resize_right" value="8"/>
78 <entry name="resize_top_right" value="9"/>
79 <entry name="resize_bottom_right" value="10"/>
80
81 <entry name="busy" value="11"/>
82 </enum>
Kristian Høgsberg75840622011-09-06 13:48:16 -040083 </interface>
84
Pekka Paalanen6e168112011-11-24 11:34:05 +020085 <interface name="screensaver" version="1">
Tiago Vignatti7bef0662012-04-16 17:31:40 +030086 <description summary="interface for implementing screensavers">
87 Only one client can bind this interface at a time.
88 </description>
Pekka Paalanen6e168112011-11-24 11:34:05 +020089
Pekka Paalanen6e168112011-11-24 11:34:05 +020090 <request name="set_surface">
Tiago Vignatti7bef0662012-04-16 17:31:40 +030091 <description summary="set the surface type as a screensaver">
92 A screensaver surface is normally hidden, and only visible after an
93 idle timeout.
94 </description>
95
Kristian Høgsberg1a73a632012-06-26 22:15:53 -040096 <arg name="surface" type="object" interface="wl_surface"/>
Pekka Paalanen6e168112011-11-24 11:34:05 +020097 <arg name="output" type="object" interface="wl_output"/>
98 </request>
99
100 </interface>
101
Jan Arne Petersen42feced2012-06-21 21:52:17 +0200102 <interface name="input_panel" version="1">
103 <description summary="interface for implementing keyboards">
104 Only one client can bind this interface at a time.
105 </description>
106
107 <request name="set_surface">
108 <description summary="set the surface type as a keyboard">
109 A keybaord surface is only shown, when a text model is active
110 </description>
111
Kristian Høgsberg0636ac32012-06-27 10:22:15 -0400112 <arg name="surface" type="object" interface="wl_surface"/>
Jan Arne Petersen42feced2012-06-21 21:52:17 +0200113 <arg name="output" type="object" interface="wl_output"/>
114 </request>
115
116 </interface>
117
118
Kristian Høgsberg75840622011-09-06 13:48:16 -0400119</protocol>