Bugfix for TIVI-1997, TIVI-2244, TIVI-2256, A ivi cursor layer may pick up a touch...
[profile/ivi/ico-uxf-weston-plugin.git] / protocol / ico_window_mgr.xml
1 <protocol name="ico_window_mgr">
2
3   <interface name="ico_window_mgr" version="1">
4     <description summary="interface for SystemController Window Management">
5       for IVI SystemController interface.
6     </description>
7
8     <enum name="v">
9       <description summary="general fixed value for ico_window_mgr">
10        General values for ico_window_mgr.
11       </description>
12       <entry name="nochange" value="0x8000" summary="no change value"/>
13       <entry name="mainsurface" value="0x8000" summary="main serface id"/>
14     </enum>
15
16     <enum name="declare_manager">
17       <description summary="declare manager">
18        Declare manager application(ex. SystemController).
19       </description>
20       <entry name="application" value="0" summary="declare application"/>
21       <entry name="manager" value="1" summary="declare manager"/>
22     </enum>
23
24     <enum name="visible">
25       <description summary="visiblity control">
26        Surface show/hide control define.
27       </description>
28       <entry name="hide" value="0" summary="surface hide"/>
29       <entry name="show" value="1" summary="surface show"/>
30     </enum>
31
32     <enum name="raise">
33       <description summary="raise control">
34        Surface raise/lower control define.
35       </description>
36       <entry name="lower" value="0" summary="surface lower"/>
37       <entry name="raise" value="1" summary="surface raise"/>
38     </enum>
39
40     <enum name="flags">
41       <description summary="flags for positionsize and visible API">
42        Flags for ico_window_mgr_set_positionsize and ico_window_mgr_set_visible API.
43       </description>
44       <entry name="animation" value="0x0001" summary="with animation"/>
45       <entry name="no_configure" value="0x0010" summary="no configure event to client"/>
46     </enum>
47
48     <enum name="attr">
49       <description summary="flags for surface attributes">
50        Flags for surface attributes.
51       </description>
52       <entry name="fixed_aspect" value="0x0010" summary="fixed aspect rate"/>
53       <entry name="align_left" value="0x0001" summary="align left side"/>
54       <entry name="align_right" value="0x0002" summary="align right side"/>
55       <entry name="align_top" value="0x0004" summary="align top side"/>
56       <entry name="align_bottom" value="0x0008" summary="align bottom side"/>
57     </enum>
58
59     <enum name="animation_type">
60       <description summary="type of the cutaway for animation">
61        Type of the cutaway for surface animation.
62       </description>
63       <entry name="hide" value="1" summary="animation for hide surface"/>
64       <entry name="show" value="2" summary="animation for shwo surface"/>
65       <entry name="move" value="4" summary="animation for move surface"/>
66       <entry name="resize" value="8" summary="animation for resize surface"/>
67     </enum>
68
69     <enum name="map_type">
70       <description summary="map buffer type of mapped surface">
71        Buffer type of mapped surface.
72       </description>
73       <entry name="egl" value="1" summary="EGL buffer"/>
74       <entry name="shm" value="2" summary="wl_shm_buffer"/>
75       <entry name="pixel" value="4" summary="glReadPixels image"/>
76     </enum>
77
78     <enum name="map_surface_event">
79       <description summary="event type of mapped surface change">
80        Event type of mapped surface change.
81       </description>
82       <entry name="contents" value="1" summary="change drawing contents"/>
83       <entry name="resize" value="2" summary="resize surface"/>
84       <entry name="map" value="4" summary="shared surface"/>
85       <entry name="unmap" value="8" summary="unshared surface"/>
86       <entry name="error" value="16" summary="error"/>
87     </enum>
88
89     <enum name="active">
90       <description summary="surface active target device">
91        Set surface active target device.
92       </description>
93       <entry name="none" value="0" summary="no active window"/>
94       <entry name="pointer" value="1" summary="wl_pointer"/>
95       <entry name="keyboard" value="2" summary="wl_keyboard"/>
96       <entry name="selected" value="4" summary="selected_window_by_operation"/>
97     </enum>
98
99     <enum name="hint">
100       <description summary="event hint information">
101        Surafce change hint information.
102       </description>
103       <entry name="change" value="0" summary="real change"/>
104       <entry name="hint" value="1" summary="hint, not change"/>
105     </enum>
106
107     <enum name="layertype">
108       <description summary="surface layer type">
109        Surafce layer type.
110       </description>
111       <entry name="background" value="0x1000" summary="background layer"/>
112       <entry name="normal" value="0x2000" summary="normal(panel) layer"/>
113       <entry name="fullscreen" value="0x3000" summary="input pancreen layer"/>
114       <entry name="inputpanel" value="0x4000" summary="input panel layer"/>
115       <entry name="touch" value="0xa000" summary="touch panel input layer"/>
116       <entry name="cursor" value="0xb000" summary="cursor layer"/>
117       <entry name="startup" value="0xc000" summary="startup application layer"/>
118     </enum>
119
120     <request name="declare_manager">
121       <description summary="declare manager application">
122        Set manager application(ex.SystemController).
123       </description>
124       <arg name="manager" type="int"/>
125     </request>
126
127     <request name="set_window_layer">
128       <description summary="set surface layer">
129        Surface belong to a layer.
130       </description>
131       <arg name="surfaceid" type="uint"/>
132       <arg name="layer" type="uint"/>
133     </request>
134
135     <request name="set_positionsize">
136       <description summary="set surface display position and surface size">
137        Set surface display position and surface size.
138       </description>
139       <arg name="surfaceid" type="uint"/>
140       <arg name="node" type="uint"/>
141       <arg name="x" type="int"/>
142       <arg name="y" type="int"/>
143       <arg name="width" type="int"/>
144       <arg name="height" type="int"/>
145       <arg name="flags" type="int"/>
146     </request>
147
148     <request name="set_visible">
149       <description summary="surface visibility control">
150        Show/Hide and Raise/Lower surface.
151       </description>
152       <arg name="surfaceid" type="uint"/>
153       <arg name="visible" type="int"/>
154       <arg name="raise" type="int"/>
155       <arg name="flags" type="int"/>
156     </request>
157
158     <request name="set_animation">
159       <description summary="set surface animation type">
160        Set surface animation type.
161       </description>
162       <arg name="surfaceid" type="uint"/>
163       <arg name="type" type="int"/>
164       <arg name="animation" type="string"/>
165       <arg name="time" type="int"/>
166     </request>
167
168     <request name="set_attributes">
169       <description summary="set surface attributes">
170        Set surface attributes.
171       </description>
172       <arg name="surfaceid" type="uint"/>
173       <arg name="attributes" type="uint"/>
174     </request>
175
176     <request name="visible_animation">
177       <description summary="surface visibility control with animation">
178        Show/Hide surface with Animation.
179       </description>
180       <arg name="surfaceid" type="uint"/>
181       <arg name="visible" type="int"/>
182       <arg name="x" type="int"/>
183       <arg name="y" type="int"/>
184       <arg name="width" type="int"/>
185       <arg name="height" type="int"/>
186     </request>
187
188     <request name="set_active">
189       <description summary="set active surface">
190        Set active surface.
191       </description>
192       <arg name="surfaceid" type="uint"/>
193       <arg name="active" type="int"/>
194     </request>
195
196     <request name="set_layer_visible">
197       <description summary="layer visibility control">
198        Show/Hide layer.
199       </description>
200       <arg name="layer" type="uint"/>
201       <arg name="visible" type="int"/>
202     </request>
203
204     <request name="get_surfaces">
205       <description summary="get surfaces of the application">
206        Get surfaces of the application.
207       </description>
208       <arg name="appid" type="string"/>
209       <arg name="pid" type="int"/>
210     </request>
211
212     <request name="set_map_buffer">
213       <description summary="set shared memory surfaces image buffer">
214        Set shared memory surfaces image buffer.
215       </description>
216       <arg name="shmname" type="string"/>
217       <arg name="bufsize" type="uint"/>
218       <arg name="bufnum" type="uint"/>
219     </request>
220
221     <request name="map_surface">
222       <description summary="shared surfaces to system application">
223        Shared surfaces to system application(ex.HomeScreen).
224       </description>
225       <arg name="surfaceid" type="uint"/>
226       <arg name="framerate" type="int"/>
227     </request>
228
229     <request name="unmap_surface">
230       <description summary="unshared surfaces">
231        Unshared surfaces.
232       </description>
233       <arg name="surfaceid" type="uint"/>
234     </request>
235
236     <event name="window_created">
237       <description summary="event of surface created">
238        Surface create event to manager.
239       </description>
240       <arg name="surfaceid" type="uint"/>
241       <arg name="winname" type="string"/>
242       <arg name="pid" type="int"/>
243       <arg name="appid" type="string"/>
244       <arg name="layertype" type="int"/>
245     </event>
246
247     <event name="window_name">
248       <description summary="event of surface name">
249        Surface name event to manager.
250       </description>
251       <arg name="surfaceid" type="uint"/>
252       <arg name="winname" type="string"/>
253     </event>
254
255     <event name="window_destroyed">
256       <description summary="event of surface destoryed">
257        Surface destory event to manager.
258       </description>
259       <arg name="surfaceid" type="uint"/>
260     </event>
261
262     <event name="window_visible">
263       <description summary="event of change surface visibility">
264        Surface visibility change event to manager.
265       </description>
266       <arg name="surfaceid" type="uint"/>
267       <arg name="visible" type="int"/>
268       <arg name="raise" type="int"/>
269       <arg name="hint" type="int"/>
270     </event>
271
272     <event name="window_configure">
273       <description summary="event of change surface attributes">
274        Surface attribute change event to manager.
275       </description>
276       <arg name="surfaceid" type="uint"/>
277       <arg name="node" type="uint"/>
278       <arg name="layertype" type="int"/>
279       <arg name="layer" type="uint"/>
280       <arg name="x" type="int"/>
281       <arg name="y" type="int"/>
282       <arg name="width" type="int"/>
283       <arg name="height" type="int"/>
284       <arg name="hint" type="int"/>
285     </event>
286
287     <event name="window_active">
288       <description summary="event of change surface active">
289        Surface active change event to manager.
290       </description>
291       <arg name="surfaceid" type="uint"/>
292       <arg name="active" type="int"/>
293     </event>
294
295     <event name="layer_visible">
296       <description summary="event of change layer visibility">
297        Layer visibility change event to manager.
298       </description>
299       <arg name="layer" type="uint"/>
300       <arg name="visible" type="int"/>
301     </event>
302
303     <event name="app_surfaces">
304       <description summary="event of reply of app_surfaces request">
305        Reply of app_surfaces request.
306       </description>
307       <arg name="appid" type="string"/>
308       <arg name="pid" type="int"/>
309       <arg name="surfaces" type="array"/>
310     </event>
311
312     <event name="map_surface">
313       <description summary="event of shared surface">
314        Event of shared surface.
315       </description>
316       <arg name="event" type="int"/>
317       <arg name="surfaceid" type="uint"/>
318       <arg name="type" type="uint"/>
319       <arg name="target" type="uint"/>
320       <arg name="width" type="int"/>
321       <arg name="height" type="int"/>
322       <arg name="stride" type="int"/>
323       <arg name="format" type="uint"/>
324     </event>
325   </interface>
326
327 </protocol>
328