1 <protocol name="tizen_extension">
2 <interface name="tizen_surface" version="1">
3 <request name="get_tizen_resource">
4 <arg name="id" type="new_id" interface="tizen_resource" />
5 <arg name="surface" type="object" interface="wl_surface" />
7 <request name="destroy" type="destructor">
8 <description summary="destroy the tizen_surface">
9 Destroy the tizen_surface.
14 <interface name="tizen_resource" version="1">
15 <request name="destroy" type="destructor" />
17 <event name="resource_id">
18 <arg name="id" type="uint" />
22 <interface name="tizen_policy" version="12">
23 <request name="get_visibility">
24 <arg name="id" type="new_id" interface="tizen_visibility" summary="new visibility object"/>
25 <arg name="surface" type="object" interface="wl_surface" summary="surface object"/>
28 <request name="get_position">
29 <arg name="id" type="new_id" interface="tizen_position" summary="new position object"/>
30 <arg name="surface" type="object" interface="wl_surface" summary="surface object"/>
33 <request name="activate">
34 <arg name="surface" type="object" interface="wl_surface" summary="surface object"/>
37 <request name="activate_below_by_res_id">
38 <arg name="res_id" type="uint" />
39 <arg name="below_res_id" type="uint" />
42 <request name="raise">
43 <arg name="surface" type="object" interface="wl_surface" summary="surface object"/>
46 <request name="lower">
47 <arg name="surface" type="object" interface="wl_surface" summary="surface object"/>
50 <request name="lower_by_res_id">
51 <arg name="res_id" type="uint" />
54 <request name="set_focus_skip">
55 <arg name="surface" type="object" interface="wl_surface" summary="surface object"/>
58 <request name="unset_focus_skip">
59 <arg name="surface" type="object" interface="wl_surface" summary="surface object"/>
62 <request name="set_role">
63 <arg name="surface" type="object" interface="wl_surface" summary="surface object"/>
64 <arg name="role" type="string"/>
67 <enum name="win_type">
68 <entry name="none" value="0"/>
69 <entry name="toplevel" value="1"/>
70 <entry name="fullscreen" value="2"/>
71 <entry name="maximized" value="3"/>
72 <entry name="transient" value="4"/>
73 <entry name="menu" value="5"/>
74 <entry name="dnd" value="6"/>
75 <entry name="custom" value="7"/>
76 <entry name="notification" value="8"/>
77 <entry name="utility" value="9"/>
78 <entry name="dialog" value="10"/>
79 <entry name="dock" value="11"/>
80 <entry name="splash" value="12"/>
81 <entry name="desktop" value="13" since="11"/>
84 <request name="set_type">
85 <arg name="surface" type="object" interface="wl_surface"/>
86 <arg name="win_type" type="uint" />
89 <!-- for conformant -->
90 <request name="set_conformant">
91 <arg name="surface" type="object" interface="wl_surface" summary="surface object"/>
94 <request name="unset_conformant">
95 <arg name="surface" type="object" interface="wl_surface" summary="surface object"/>
98 <request name="get_conformant">
99 <arg name="surface" type="object" interface="wl_surface" summary="surface object"/>
102 <event name="conformant">
103 <arg name="surface" type="object" interface="wl_surface" summary="surface object"/>
104 <arg name="is_conformant" type="uint"/>
107 <enum name="conformant_part">
108 <entry name="indicator" value="0"/>
109 <entry name="keyboard" value="1"/>
110 <entry name="clipboard" value="2"/>
113 <event name="conformant_area">
114 <description summary="Notify of conformant area">
115 Notify of conformant area to client. Sending this event does NOT guarantee
116 perfect compositing of conformant owner client surface and
117 conformant part client surface.
119 <arg name="surface" type="object" interface="wl_surface" summary="surface object"/>
120 <arg name="conformant_part" type="uint"/>
121 <arg name="state" type="uint"/>
122 <arg name="x" type="int"/>
123 <arg name="y" type="int"/>
124 <arg name="w" type="int"/>
125 <arg name="h" type="int"/>
128 <enum name="error_state">
129 <entry name="none" value="0"/>
130 <entry name="permission_denied" value="1"/>
133 <!-- for notification -->
135 <entry name="1" value="0"/>
136 <entry name="2" value="1"/>
137 <entry name="3" value="2"/>
138 <entry name="none" value="-1"/>
139 <entry name="default" value="10"/>
140 <entry name="medium" value="20"/>
141 <entry name="high" value="30"/>
142 <entry name="top" value="40"/>
145 <request name="set_notification_level">
146 <arg name="surface" type="object" interface="wl_surface"/>
147 <arg name="level" type="int"/>
150 <event name="notification_done">
151 <arg name="surface" type="object" interface="wl_surface"/>
152 <arg name="level" type="int"/>
153 <arg name="error_state" type="uint"/>
156 <!-- for transient_for -->
157 <request name="set_transient_for">
158 <arg name="child_id" type="uint" />
159 <arg name="parent_id" type="uint" />
162 <request name="unset_transient_for">
163 <arg name="child_id" type="uint" />
166 <event name="transient_for_done">
167 <arg name="child_id" type="uint"/>
170 <!-- for window_screen_mode -->
172 <entry name="default" value="0"/>
173 <entry name="always_on" value="1"/>
176 <request name="set_window_screen_mode">
177 <arg name="surface" type="object" interface="wl_surface"/>
178 <arg name="mode" type="uint"/>
181 <event name="window_screen_mode_done">
182 <arg name="surface" type="object" interface="wl_surface"/>
183 <arg name="mode" type="uint"/>
184 <arg name="error_state" type="uint"/>
187 <!-- for subsurface -->
188 <request name="place_subsurface_below_parent">
189 <arg name="subsurface" type="object" interface="wl_subsurface"/>
192 <request name="set_subsurface_stand_alone">
193 <arg name="subsurface" type="object" interface="wl_subsurface"/>
196 <request name="get_subsurface">
197 <arg name="id" type="new_id" interface="wl_subsurface" />
198 <arg name="surface" type="object" interface="wl_surface" />
199 <arg name="parent_id" type="uint" />
202 <!-- for opaque_state -->
203 <request name="set_opaque_state">
204 <arg name="surface" type="object" interface="wl_surface" />
205 <arg name="state" type="int"/>
209 <request name="iconify">
210 <arg name="surface" type="object" interface="wl_surface" summary="surface object"/>
212 <request name="uniconify">
213 <arg name="surface" type="object" interface="wl_surface" summary="surface object"/>
216 <event name="iconify_state_changed">
217 <arg name="surface" type="object" interface="wl_surface"/>
218 <arg name="iconified" type="uint"/>
219 <arg name="force" type="uint"/>
222 <!-- for aux_hint -->
223 <request name="add_aux_hint">
224 <arg name="surface" type="object" interface="wl_surface"/>
225 <arg name="id" type="int" />
226 <arg name="name" type="string" />
227 <arg name="value" type="string" />
230 <request name="change_aux_hint">
231 <arg name="surface" type="object" interface="wl_surface"/>
232 <arg name="id" type="int" />
233 <arg name="value" type="string" />
236 <request name="del_aux_hint">
237 <arg name="surface" type="object" interface="wl_surface"/>
238 <arg name="id" type="int" />
241 <request name="get_supported_aux_hints">
242 <arg name="surface" type="object" interface="wl_surface"/>
245 <event name="supported_aux_hints">
246 <arg name="surface" type="object" interface="wl_surface"/>
247 <arg name="hints" type="array" />
248 <arg name="num_hints" type="uint"/>
251 <event name="allowed_aux_hint">
252 <arg name="surface" type="object" interface="wl_surface"/>
253 <arg name="id" type="int" />
256 <!-- for aux_message -->
257 <event name="aux_message">
258 <arg name="surface" type="object" interface="wl_surface" />
259 <arg name="key" type="string" />
260 <arg name="value" type="string" />
261 <arg name="options" type="array" />
264 <!-- for background state -->
265 <request name="set_background_state">
266 <arg name="pid" type="uint" />
269 <request name="unset_background_state">
270 <arg name="pid" type="uint" />
273 <!-- for floating mode -->
274 <request name="set_floating_mode">
275 <arg name="surface" type="object" interface="wl_surface" summary="surface object"/>
278 <request name="unset_floating_mode">
279 <arg name="surface" type="object" interface="wl_surface" summary="surface object"/>
282 <!-- for stack mode -->
283 <enum name="stack_mode">
284 <entry name="none" value="0"/>
285 <entry name="above" value="1"/>
286 <entry name="below" value="2"/>
289 <request name="set_stack_mode">
290 <arg name="surface" type="object" interface="wl_surface"/>
291 <arg name="mode" type="uint" />
294 <request name="activate_above_by_res_id">
295 <arg name="res_id" type="uint" />
296 <arg name="above_res_id" type="uint" />
299 <!-- version 2 additions -->
300 <!-- for subsurface watcher -->
301 <request name="get_subsurface_watcher" since="2">
302 <arg name="id" type="new_id" interface="tizen_subsurface_watcher" />
303 <arg name="surface" type="object" interface="wl_surface" />
306 <!-- version 3 additions -->
307 <request name="set_parent" since="3">
308 <arg name="child" type="object" interface="wl_surface" />
309 <arg name="parent" type="object" interface="wl_surface" />
312 <!-- version 4 additions -->
313 <!-- for conformant -->
314 <event name="conformant_region" since="4">
315 <description summary="notify of geometry values of conformant region(area)">
316 The server can notify of conformant region(area) using this event.
317 If client is received this event, client should ack for it using
318 tizen_policy@ack_conformant_region request.
320 <arg name="surface" type="object" interface="wl_surface" summary="surface object"/>
321 <arg name="conformant_part" type="uint"/>
322 <arg name="state" type="uint"/>
323 <arg name="x" type="int"/>
324 <arg name="y" type="int"/>
325 <arg name="w" type="int"/>
326 <arg name="h" type="int"/>
327 <arg name="serial" type="uint"/>
330 <request name="ack_conformant_region" since="4">
331 <description summary="ack for tizen_policy@conformant_region">
332 A client can refresh its surface for applying new conformant region which
333 is from tizen_policy@conformant_region event. The client has to ack
334 after complete of its updates by this request.
336 <arg name="surface" type="object" interface="wl_surface" summary="surface object"/>
337 <arg name="serial" type="uint"/>
340 <request name="destroy" type="destructor" since="6">
341 <description summary="destroy the tizen_policy">
342 Destroy the tizen_policy.
346 <request name="has_video" since="7">
347 <arg name="surface" type="object" interface="wl_surface" summary="surface object"/>
348 <arg name="has" type="uint"/>
351 <request name="set_appid" since="7">
352 <arg name="pid" type="int" />
353 <arg name="appid" type="string" />
356 <request name="show" since="8">
357 <arg name="surface" type="object" interface="wl_surface" summary="surface object"/>
360 <request name="hide" since="8">
361 <arg name="surface" type="object" interface="wl_surface" summary="surface object"/>
364 <request name="set_transient_for_below" since="9">
365 <description summary="set transient_for and place under the transient_for parent">
366 This makes a relationship between parent and child. A child is always placed under a parent.
368 <arg name="child_id" type="uint" />
369 <arg name="parent_id" type="uint" />
372 <request name="set_parent_with_below" since="9">
373 <description summary="set parent and place under the parent">
374 This makes a relationship between parent and child. A child is always placed under a parent.
375 Setting a null parent for a child window removes any parent-child relationship for the child.
377 <arg name="child" type="object" interface="wl_surface" />
378 <arg name="parent" type="object" interface="wl_surface" allow-null="true"/>
381 <event name="interactive_move_done" since="10">
382 <description summary="interactive move is done">
383 This event is sent when the display server finishes interactive moving the window.
384 The changed geometry of the window is sent together.
386 <arg name="surface" type="object" interface="wl_surface" summary="surface object"/>
387 <arg name="x" type="int" summary="x-position after move"/>
388 <arg name="y" type="int" summary="y-position after move"/>
389 <arg name="w" type="uint" summary="width after move"/>
390 <arg name="h" type="uint" summary="height after move"/>
393 <event name="interactive_resize_done" since="10">
394 <description summary="interactive resize is done">
395 This event is sent when the display server finishes interactive resizing the window.
396 The changed geometry of the window is sent together.
398 <arg name="surface" type="object" interface="wl_surface" summary="surface object"/>
399 <arg name="x" type="int" summary="x-position after resize"/>
400 <arg name="y" type="int" summary="y-position after resize"/>
401 <arg name="w" type="uint" summary="width after resize"/>
402 <arg name="h" type="uint" summary="height after resize"/>
405 <!-- for snap type -->
406 <enum name="snap_type">
407 <entry name="left" value="0" summary="the left side of the screen"/>
408 <entry name="right" value="1" summary="the right side of the screen"/>
409 <entry name="top" value="2" summary="the top of the screen"/>
410 <entry name="bottom" value="3" summary="the bottom of the screen"/>
413 <request name="snap_window" since="12">
414 <description summary="snap window">
415 Snap the window to the location (such as the side of the screen) where you want it to be.
417 <arg name="surface" type="object" interface="wl_surface" summary="surface object"/>
418 <arg name="type" type="uint"/>
422 <interface name="tizen_visibility" version="5">
423 <request name="destroy" type="destructor"/>
425 <enum name="visibility">
426 <entry name="unobscured" value="0"/>
427 <entry name="partially_obscured" value="1"/>
428 <entry name="fully_obscured" value="2"/>
429 <entry name="pre_unobscured" value="3" since="5"/>
432 <event name="notify">
433 <arg name="visibility" type="uint"/>
436 <!-- Version 6 additions -->
438 <event name="changed" since="5">
439 <arg name="type" type="uint" enum="visibility" summary="changed visibility type"/>
440 <arg name="option" type="uint" summary="extra value"/>
445 <interface name="tizen_position" version="1">
446 <request name="destroy" type="destructor"/>
449 <arg name="x" type="int"/>
450 <arg name="y" type="int"/>
453 <event name="changed">
454 <arg name="x" type="int"/>
455 <arg name="y" type="int"/>
459 <interface name="tizen_move_resize" version="1">
460 <request name="destroy" type="destructor"/>
462 <request name="set_geometry">
463 <arg name="surface" type="object" interface="wl_surface" summary="surface object"/>
464 <arg name="serial" type="uint" />
465 <arg name="x" type="int"/>
466 <arg name="y" type="int"/>
467 <arg name="w" type="int"/>
468 <arg name="h" type="int"/>
471 <enum name="error_state">
472 <entry name="none" value="0"/>
473 <entry name="invalid_buffer" value="1"/>
474 <entry name="not_supported" value="2"/>
477 <event name="geometry_done">
478 <description summary="Notify of set_geometry request result">
480 <arg name="surface" type="object" interface="wl_surface" summary="surface object"/>
481 <arg name="serial" type="uint" />
482 <arg name="x" type="int"/>
483 <arg name="y" type="int"/>
484 <arg name="w" type="int"/>
485 <arg name="h" type="int"/>
486 <arg name="error_state" type="uint" enum="error_state"/>
490 <interface name="tizen_gesture" version="2">
492 <entry name="none" value="0"/>
493 <entry name="invalid_data" value="1"/>
494 <entry name="no_permission" value="2"/>
495 <entry name="no_system_resources" value="3"/>
496 <entry name="grabbed_already" value="4"/>
497 <entry name="not_supported" value="5"/>
501 <entry name="edge_swipe" value="1"/>
502 <entry name="edge_drag" value="2" since="2"/>
503 <entry name="tap" value="4" since="2"/>
504 <entry name="palm_cover" value="8" since="2"/>
505 <entry name="pan" value="16" since="2"/>
506 <entry name="pinch" value="32" since="2"/>
507 <entry name="palm_swipe" value="64" since="2"/>
511 <entry name="begin" value="1"/>
512 <entry name="update" value="2"/>
513 <entry name="end" value="3"/>
514 <entry name="done" value="4"/>
518 <entry name="top" value="1"/>
519 <entry name="right" value="2"/>
520 <entry name="bottom" value="3"/>
521 <entry name="left" value="4"/>
524 <enum name="edge_size">
525 <entry name="none" value="0"/>
526 <entry name="full" value="1"/>
527 <entry name="partial" value="2"/>
530 <request name="grab_edge_swipe">
531 <arg name="fingers" type="uint"/>
532 <arg name="edge" type="uint" enum="edge"/>
533 <arg name="edge_size" type="uint" enum="edge_size"/>
534 <arg name="start_point" type="uint"/>
535 <arg name="end_point" type="uint"/>
538 <request name="ungrab_edge_swipe">
539 <arg name="fingers" type="uint"/>
540 <arg name="edge" type="uint" enum="edge"/>
541 <arg name="edge_size" type="uint" enum="edge_size"/>
542 <arg name="start_point" type="uint"/>
543 <arg name="end_point" type="uint"/>
546 <event name="grab_edge_swipe_notify">
547 <arg name="fingers" type="uint"/>
548 <arg name="edge" type="uint" enum="edge"/>
549 <arg name="edge_size" type="uint" enum="edge_size"/>
550 <arg name="start_point" type="uint"/>
551 <arg name="end_point" type="uint"/>
552 <arg name="error" type="uint"/>
555 <event name="edge_swipe">
556 <arg name="mode" type="uint" enum="mode"/>
557 <arg name="fingers" type="uint"/>
558 <arg name="sx" type="int" summary="x coordinate of touch down point"/>
559 <arg name="sy" type="int" summary="y coordinate of touch down point"/>
560 <arg name="edge" type="uint" enum="edge"/>
563 <request name="grab_edge_drag">
564 <arg name="fingers" type="uint"/>
565 <arg name="edge" type="uint" enum="edge"/>
566 <arg name="edge_size" type="uint" enum="edge_size"/>
567 <arg name="start_point" type="uint"/>
568 <arg name="end_point" type="uint"/>
571 <request name="ungrab_edge_drag">
572 <arg name="fingers" type="uint"/>
573 <arg name="edge" type="uint" enum="edge"/>
574 <arg name="edge_size" type="uint" enum="edge_size"/>
575 <arg name="start_point" type="uint"/>
576 <arg name="end_point" type="uint"/>
579 <event name="edge_drag_notify">
580 <arg name="fingers" type="uint"/>
581 <arg name="edge" type="uint" enum="edge"/>
582 <arg name="edge_size" type="uint" enum="edge_size"/>
583 <arg name="start_point" type="uint"/>
584 <arg name="end_point" type="uint"/>
585 <arg name="error" type="uint"/>
588 <event name="edge_drag">
589 <arg name="mode" type="uint" enum="mode"/>
590 <arg name="fingers" type="uint"/>
591 <arg name="cx" type="int" summary="x coordinate of center touch point"/>
592 <arg name="cy" type="int" summary="y coordinate of center touch point"/>
593 <arg name="edge" type="uint" enum="edge"/>
596 <request name="grab_tap" since="2">
597 <arg name="fingers" type="uint"/>
598 <arg name="repeats" type="uint"/>
601 <request name="ungrab_tap" since="2">
602 <arg name="fingers" type="uint"/>
603 <arg name="repeats" type="uint"/>
606 <event name="tap_notify" since="2">
607 <arg name="fingers" type="uint"/>
608 <arg name="repeats" type="uint"/>
609 <arg name="error" type="uint"/>
612 <event name="tap" since="2">
613 <arg name="mode" type="uint" enum="mode"/>
614 <arg name="fingers" type="uint"/>
615 <arg name="repeats" type="uint"/>
618 <request name="grab_palm_cover" since="2">
621 <request name="ungrab_palm_cover" since="2">
624 <request name="select_palm_cover" since="2">
625 <arg name="surface" type="object" interface="wl_surface"/>
628 <request name="deselect_palm_cover" since="2">
629 <arg name="surface" type="object" interface="wl_surface"/>
632 <event name="palm_cover_notify" since="2">
633 <arg name="surface" type="object" interface="wl_surface" allow-null="true"/>
634 <arg name="error" type="uint"/>
637 <event name="palm_cover" since="2">
638 <arg name="surface" type="object" interface="wl_surface" allow-null="true"/>
639 <arg name="mode" type="uint" enum="mode"/>
640 <arg name="duration" type="uint"/>
641 <arg name="cx" type="int" summary="x coordinate of center touch point"/>
642 <arg name="cy" type="int" summary="y coordinate of center touch point"/>
643 <arg name="size" type="uint"/>
644 <arg name="pressure" type="fixed"/>
647 <request name="activate_set" since="2">
648 <arg name="surface" type="object" interface="wl_surface" allow-null="true"/>
649 <arg name="type" type="uint" enum="type"/>
650 <arg name="active" type="uint"/>
653 <event name="activate_notify" since="2">
654 <arg name="surface" type="object" interface="wl_surface" allow-null="true"/>
655 <arg name="type" type="uint" enum="type"/>
656 <arg name="active" type="uint"/>
657 <arg name="error" type="uint"/>
660 <request name="destroy" type="destructor" since="2">
661 <description summary="destroy the tizen_gesture">
662 Destroy the tizen_gesture.
668 <interface name="tizen_keyrouter" version="2">
669 <description summary="an interface to set each focus for each key">
670 In tradition, all the keys in a keyboard and a device on which
671 some keys are attached will be sent to focus surface by default.
672 Currently it's possible to set up each focus for each key in a keyboard and a device.
673 Therefore, by setting a key grab for a surface, the owner of the
674 surface will get the key event when it has the key grab for the key.
678 <entry name="none" value="0" summary="no error"/>
679 <entry name="invalid_surface" value="1" summary="Given surface is invalid."/>
680 <entry name="invalid_key" value="2" summary="Given key is invalid."/>
681 <entry name="invalid_mode" value="3" summary="Given mode is invalid."/>
682 <entry name="grabbed_already" value="4" summary="The key has been grabbed already."/>
683 <entry name="no_permission" value="5" summary="The wl client has no permission to grab the key."/>
684 <entry name="no_system_resources" value="6" summary="System resources are insufficient."/>
685 <entry name="invalid_array" value="7" summary="Given array has invalid pairs or data type."/>
689 <description summary="mode for a key grab">
690 This value is used to set a mode for a key grab. With this mode and
691 the order of the surface between surfaces' stack, the compositor will determine the destination client
694 <entry name="none" value="0" summary="none"/>
695 <entry name="shared" value="1"
696 summary="mode to get a key grab with the other client surfaces when the focused client surface gets the key"/>
697 <entry name="topmost" value="2"
698 summary="mode to get a key grab when the client surface is the top most surface"/>
699 <entry name="overridable_exclusive" value="3"
700 summary="mode to get a key grab exclusively, overridably regardless of the order in the surface stack"/>
701 <entry name="exclusive" value="4"
702 summary="mode to get a key grab exclusively regardless of the order in surface stack"/>
703 <entry name="registered" value="5"
704 summary="mode to get a key grab only when a requesting surface is on top among the registering surfaces for the key"/>
707 <enum name="config_mode">
708 <description summary="mode for setting specific property for Key delivery">
709 This value is used to set a mode for a window. With this mode and
710 the order of the surface between surfaces' stack, the compositor will determine the destination client
713 <entry name="none" value="0" summary="none"/>
714 <entry name="invisible_set" value="1"
715 summary="mode to set window to enable send event to invisible window below in stack"/>
716 <entry name="invisible_get" value="2"
717 summary="mode to set window to get event to invisible state if any top window has set register_set"/>
718 <entry name="num_key_focus" value="3"
719 summary="mode to register for num keys for focus window"/>
720 <entry name="picture_off" value="4"
721 summary="mode to set picture off for particular key"/>
724 <request name="set_keygrab">
725 <arg name="surface" type="object" interface="wl_surface" allow-null="true"/>
726 <arg name="key" type="uint"/>
727 <arg name="mode" type="uint"/>
730 <request name="unset_keygrab">
731 <arg name="surface" type="object" interface="wl_surface" allow-null="true"/>
732 <arg name="key" type="uint"/>
735 <request name="get_keygrab_status">
736 <arg name="surface" type="object" interface="wl_surface" allow-null="true"/>
737 <arg name="key" type="uint"/>
740 <request name="set_keygrab_list">
741 <arg name="surface" type="object" interface="wl_surface" allow-null="true"/>
742 <arg name="grab_list" type="array" summary="array of two integer variables pairs each pairs consist of keycode and keygrab mode"/>
745 <request name="unset_keygrab_list">
746 <arg name="surface" type="object" interface="wl_surface" allow-null="true"/>
747 <arg name="ungrab_list" type="array" summary="array of integer variables meaning keycode wanted to ungrab"/>
750 <request name="get_keygrab_list">
751 <arg name="surface" type="object" interface="wl_surface" allow-null="true"/>
754 <request name="set_register_none_key">
755 <arg name="surface" type="object" interface="wl_surface" allow-null="true"/>
756 <arg name="data" type="uint"/>
759 <request name="get_keyregister_status">
760 <arg name="data" type="uint"/>
763 <request name="set_input_config">
764 <arg name="surface" type="object" interface="wl_surface" allow-null="true"/>
765 <arg name="config_mode" type="uint"/>
766 <arg name="value" type="uint"/>
769 <event name="keygrab_notify">
770 <arg name="surface" type="object" interface="wl_surface" allow-null="true"/>
771 <arg name="key" type="uint"/>
772 <arg name="mode" type="uint"/>
773 <arg name="error" type="uint"/>
776 <event name="keygrab_notify_list">
777 <arg name="surface" type="object" interface="wl_surface" allow-null="true"/>
778 <arg name="grab_result" type="array" summary="array of three integer variables pairs each pairs consist of keycode, keygrab mode and keygrab result"/>
781 <event name="getgrab_notify_list">
782 <arg name="surface" type="object" interface="wl_surface" allow-null="true"/>
783 <arg name="grab_result" type="array" summary="array of two integer variables pairs each pairs consist of keycode, keygrab mode"/>
786 <event name="set_register_none_key_notify">
787 <arg name="surface" type="object" interface="wl_surface" allow-null="true"/>
788 <arg name="mode" type="uint"/>
791 <event name="keyregister_notify">
792 <arg name="status" type="uint"/>
795 <event name="set_input_config_notify">
796 <arg name="status" type="uint"/>
799 <event name="key_cancel">
800 <arg name="key" type="uint"/>
803 <request name="destroy" type="destructor">
804 <description summary="destroy the tizen_keyrouter">
805 Destroy the tizen_keyrouter.
808 <event name="event_surface" since="2">
809 <arg name="surface" type="object" interface="wl_surface"/>
810 <arg name="key" type="uint"/>
811 <arg name="mode" type="uint"/>
815 <interface name="tizen_screenshooter" version="3">
816 <description summary="interface for tizen-screenshooter">
817 Clients can get a screenmirror object from this interface.
820 <request name="get_screenmirror">
821 <description summary="create a screenmirror object">
822 Before using screenmirror, a client should get a screenmirror object from display
825 <arg name="id" type="new_id" interface="tizen_screenmirror" summary="new screenmirror object"/>
826 <arg name="output" type="object" interface="wl_output" summary="output object for screenmirror"/>
829 <request name="set_oneshot_auto_rotation">
830 <description summary="set screen shot auto rotation value">
831 Client can set auto rotation value for one shot.
833 <arg name="set" type="uint"/>
836 <event name="format">
837 <description summary="supported format for screenshooter">
838 The tbm format codes match the #defines in tbm_surface.h. The formats actually
839 supported by the compositor will be reported by the format event.
841 <arg name="format" type="uint"/>
844 <event name="screenshooter_notify">
845 <description summary="send notification of screenshooter">
846 Clients can get notification of screenshooter.
848 <arg name="noti" type="uint"/>
851 <request name="destroy" type="destructor">
852 <description summary="destroy the tizen_screenshooter">
853 Destroy the tizen_screenshooter.
857 <request name="shoot" since="3">
858 <arg name="output" type="object" interface="wl_output"/>
859 <arg name="buffer" type="object" interface="wl_buffer"/>
862 <event name="done" since="3">
867 <interface name="tizen_screenmirror" version="3">
868 <description summary="interface for screenmirror">
869 A client can use this interface to get stream images of screen. Before starting,
870 queue all buffers. Then, start a screenmirror. After starting, a dequeued event
871 will occur when drawing a captured image on a buffer is finished. You might
872 need to queue the dequeued buffer again to get a new image from display server.
875 <request name="destroy" type="destructor"/>
877 <request name="set_stretch">
878 <arg name="stretch" type="uint" summary="stretch type for screenmirror"/>
881 <request name="queue">
882 <description summary="queue a buffer"/>
883 <arg name="buffer" type="object" interface="wl_buffer" summary="buffer object for screenmirror"/>
886 <request name="dequeue">
887 <description summary="dequeue a buffer">
888 A user can dequeue a buffer from display server when he wants to take back it from server.
890 <arg name="buffer" type="object" interface="wl_buffer" summary="buffer object for screenmirror"/>
893 <request name="start"/>
894 <request name="stop"/>
896 <enum name="content">
897 <entry name="normal" value="0"/>
898 <entry name="video" value="1"/>
901 <enum name="stretch">
902 <entry name="keep_ratio" value="0"/>
903 <entry name="fully" value="1"/>
906 <event name="dequeued">
907 <description summary="dequeued event">
908 occurs when drawing a captured image on a buffer is finished
910 <arg name="buffer" type="object" interface="wl_buffer" summary="dequeued buffer which contains a captured image"/>
913 <event name="content">
914 <description summary="content changed event">
915 occurs when the content of a captured image is changed. (normal or video)
917 <arg name="content" type="uint"/>
921 <description summary="stop event">
922 occurs when the screenmirror is stopped eventually
926 <!-- version 2 additions -->
927 <request name="set_auto_rotation" since="2">
928 <description summary="set screenmirror auto rotation value">
929 Client can set auto rotation value for screenmirror.
931 <arg name="set" type="uint"/>
935 <interface name="tizen_video" version="1">
937 <description summary="interface for tizen-video">
938 Clients can get the video information that the compositor can handle from this interface.
942 <entry name="none" value="0"/>
943 <entry name="object_exists" value="1"/>
944 <entry name="viewport_exists" value="2"/>
947 <event name="format">
948 <description summary="supported format for video">
949 The tbm format codes match the #defines in tbm_surface.h. The formats actually
950 supported by the compositor will be reported by the format event.
952 <arg name="format" type="uint"/>
955 <request name="get_object">
956 <arg name="id" type="new_id" interface="tizen_video_object" />
957 <arg name="surface" type="object" interface="wl_surface" />
960 <request name="get_viewport">
961 <arg name="id" type="new_id" interface="tizen_viewport" />
962 <arg name="surface" type="object" interface="wl_surface" />
965 <request name="destroy" type="destructor">
966 <description summary="destroy the tizen_video">
967 Destroy the tizen_video.
973 <interface name="tizen_video_object" version="1">
975 <event name="attribute">
976 <arg name="name" type="string"/>
977 <arg name="value" type="uint"/>
981 <arg name="min_w" type="int"/>
982 <arg name="min_h" type="int"/>
983 <arg name="max_w" type="int"/>
984 <arg name="max_h" type="int"/>
985 <arg name="prefer_align" type="int"/>
988 <request name="destroy" type="destructor"/>
989 <request name="set_attribute">
990 <arg name="name" type="string"/>
991 <arg name="value" type="int"/>
994 <request name="follow_topmost_visibility">
995 <description summary="follow mute control change of a topmost surface">
996 If tizen_video_object.follow_topmost_visibility is applied to a video_object,
997 It will be video mute control based on topmost visibility.
1001 <request name="unfollow_topmost_visibility">
1002 <description summary="unfollow mute control change of a topmost surface">
1003 If tizen_video_object.unfollow_topmost_visibility is applied to a video_object,
1004 It will not be video mute control based on topmost visibility.
1008 <request name="allowed_attribute">
1009 <description summary="allowed_attribute">
1010 If tizen_video_object.allowed_attribute is applied to a video_object,
1011 set_attribute request will be deliever to tdm backend directly.
1015 <request name="disallowed_attribute">
1016 <description summary="disallowed_attribute">
1017 If tizen_video_object.disallowed_attribute is applied to a video_object,
1018 It would be tdm_attribute call when topmost showing.
1024 <interface name="tizen_subsurface_watcher" version="1">
1027 <entry name="success" value="0"/>
1028 <entry name="parent_id_invalid" value="1"/>
1029 <entry name="parent_id_destroyed" value="2"/>
1032 <event name="message">
1033 <arg name="value" type="uint"/>
1036 <request name="destroy" type="destructor">
1037 <description summary="destroy the tizen_subsurface_watcher">
1038 Destroy the tizen_subsurface_watcher.
1044 <interface name="tizen_viewport" version="1">
1046 <description summary="the viewport for a surface">
1047 This is the alternative and convenient solution of wl_viewport to present
1048 a surface on screen.
1050 The below five functions can be replaced with this interface. The below
1051 functions will be ignored after applying this interface to a surface.
1052 - wl_surface.set_buffer_transform
1053 - wl_surface.set_buffer_scale
1054 - wl_subsurface.set_position
1055 - wl_viewport.set_source
1056 - wl_viewport.set_destination
1058 wl_viewport.set_source is very complicated especially when the buffer of
1059 wl_surface is transformed by wl_surface.set_buffer_transform. And when the
1060 parent is resized, if we want to change the geometry of a subsurface also,
1061 wl_subsurface.set_position and wl_viewport.set_destination should be called
1062 everytime the parent is resized in client side. This makes difficult to
1063 synchronize a parent surface and a subsurface on screen.
1065 tizen_viewport allows clients to set the relative geometry to a subsurface
1066 in a parent surface. Whenever a parent surface is resized, the geometry of
1067 a subsurface will be calculated, moved and resized automatically by a
1068 compositor. The tizen_viewport is specified in the coordinates of a
1069 subsurface's parent.
1071 If tizen_viewport is applied to a shell surface(toplevel), the all value related
1072 with x, y pos of tizen_viewport and tizen_destination_mode interface will be ignored.
1074 The below 3 functions don't consider the transform of a parent's surface.
1075 - tizen_viewport.set_source
1076 - tizen_viewport.set_destination
1077 - tizen_viewport.set_destination_ratio
1079 Furthermore, tizen_destination_mode.follow_parent_transform is called,
1080 tizen_viewport will consider the transform of a parent surface when applying
1081 the destination mode to a subsurface. If tizen_destination_mode.follow_parent_transform
1082 is applied to a shell surface, it will be ignored.
1084 The destination will be cropped by a parent surface.
1086 The change will be applied when wl_surface.commit is called.
1089 <event name="destination_changed">
1090 <arg name="transform" type="uint"/>
1091 <arg name="x" type="int"/>
1092 <arg name="y" type="int"/>
1093 <arg name="width" type="uint"/>
1094 <arg name="height" type="uint"/>
1097 <request name="destroy" type="destructor" />
1099 <request name="set_transform">
1100 <description summary="set the transform of a surface">
1101 The accepted values for the transform parameter are the values for wl_output.transform
1102 according to the output transform.
1104 The tizen_viewport.set_transform is applied only to itself. Basically it
1105 doesn't effect the transform of its subsurfaces. That is, if 90 transform is
1106 setted and its subsurface still has 0 transform, its subsurface won't be
1109 If needed to rotate the subsurface depended on a parent surface,
1110 tizen_destination_mode.follow_parent_transform will make it possible.
1113 <arg name="transform" type="uint"/>
1116 <request name="set_source">
1117 <description summary="set the source rectalge of a wl_buffer">
1118 The source rectangle won't be changed when a parent is resized. If it needs
1119 to be changed, tizen_viewport.set_source should be called with new values.
1121 <arg name="x" type="uint"/>
1122 <arg name="y" type="uint"/>
1123 <arg name="width" type="uint"/>
1124 <arg name="height" type="uint"/>
1127 <request name="set_destination">
1128 <description summary="set the destination geometry of a surface">
1129 The destination geometry won't be changed when a parent is resized. If it
1130 needs to be changed, tizen_viewport.set_destination should be called with
1133 If tizen_viewport is applied to a shell surface(toplevel), the x, y value of
1134 tizen_viewport.set_destination will be ignored.
1136 <arg name="x" type="int"/>
1137 <arg name="y" type="int"/>
1138 <arg name="width" type="uint"/>
1139 <arg name="height" type="uint"/>
1142 <request name="set_destination_ratio">
1143 <description summary="set the ratio destination rectalge in a parent surface">
1144 The destination rectangle of a subsurface will be automatically changed
1145 when a parent is resized. This allows the real number between 0.0 and 1.0.
1146 See wl_fixed_from_double and wl_fixed_to_double.
1148 If tizen_viewport is applied to a shell surface(toplevel), the x, y value of
1149 tizen_viewport.set_destination_ratio will be ignored.
1151 <arg name="x" type="fixed"/>
1152 <arg name="y" type="fixed"/>
1153 <arg name="width" type="fixed"/>
1154 <arg name="height" type="fixed"/>
1157 <request name="get_destination_mode">
1158 <arg name="id" type="new_id" interface="tizen_destination_mode" />
1161 <request name="query_parent_size" since="1">
1162 <description summary="set the ratio destination rectalge in a parent surface">
1163 A client can asks the display server to send the size of tizen_viewport object's
1164 parent surface. Once a client requests it, the "parent_size" event will be sent
1165 whenever the parent surface's size is changed.
1169 <event name="parent_size">
1170 <arg name="width" type="uint" />
1171 <arg name="height" type="uint" />
1174 <request name="follow_parent_transform">
1175 <description summary="follow the transform change of a parent surface">
1176 The real transform of a subsurface is (parent's transform + subsurface's transform).
1177 The subsurface will be rotated automatically when the parent is rotated.
1179 If tizen_viewport.follow_parent_transform is applied to a shell surface(toplevel),
1184 <request name="unfollow_parent_transform" />
1188 <interface name="tizen_destination_mode" version="1">
1190 <description summary="the destination mode for a surface">
1191 The destination rectangle will be automatically changed when a parent is
1192 resized. When tizen_destination_mode.set is called, the value of
1193 tizen_viewport.set_destination and tizen_viewport.set_destination_ratio
1196 The destination of a surface is decided by the mode, ratio, scale, offset
1197 and align values. The ratio, scale, offset and align will be applied
1200 The change will be applied when wl_surface.commit is called.
1204 <entry name="invalid_type" value="0"/>
1208 <entry name="none" value="0"/>
1209 <entry name="letter_box" value="1"/>
1210 <entry name="origin" value="2"/>
1211 <entry name="full" value="3"/>
1212 <entry name="cropped_full" value="4"/>
1213 <entry name="origin_or_letter" value="5"/>
1216 <request name="destroy" type="destructor" />
1218 <request name="follow_parent_transform">
1219 <description summary="follow the transform change of a parent surface">
1220 The real transform of a subsurface is (parent's transform + subsurface's transform).
1221 That is, the subsurface will be rotated automatically when the parent is rotated.
1223 If tizen_destination_mode.follow_parent_transform is applied to a shell surface(toplevel),
1228 <request name="unfollow_parent_transform" />
1230 <request name="set" summary="set the destination mode">
1231 <arg name="mode" type="uint" enum="type"/>
1234 <request name="set_ratio">
1235 <description summary="set the ratio of the destination rectangle of a subsurface">
1236 This allows the real number. See wl_fixed_from_double and wl_fixed_to_double.
1238 <arg name="horizontal" type="fixed"/>
1239 <arg name="vertical" type="fixed"/>
1242 <request name="set_scale">
1243 <description summary="set the scale of the destination rectangle of a subsurface">
1244 This allows the real number. See wl_fixed_from_double and wl_fixed_to_double.
1246 <arg name="horizontal" type="fixed"/>
1247 <arg name="vertical" type="fixed"/>
1250 <request name="set_align">
1251 <description summary="set the align of the destination rectangle of a subsurface">
1252 This allows the real number between 0.0 and 1.0. See wl_fixed_from_double and
1255 <arg name="horizontal" type="fixed"/>
1256 <arg name="vertical" type="fixed"/>
1259 <request name="set_offset">
1260 <arg name="x" type="int"/>
1261 <arg name="y" type="int"/>
1262 <arg name="w" type="int"/>
1263 <arg name="h" type="int"/>
1268 <interface name="tizen_embedded_compositor" version="1">
1270 <description summary="global embedded compositor object">
1271 The global obejct. Wayland has 3 type of compositor, embedded compositor is one of them.
1272 But tizen application is sendboxing by smack, then a application not allow commutication to other application by socket.
1273 So system or session compositor create socket and send to embedded compostior.
1276 <request name="get_socket">
1277 <description summary="create new socket">
1278 The get_socket request ask the server to create socket and emit socket event.
1282 <event name="socket">
1283 <description summary="socket fd">
1284 Sent immediately after get_socket request
1286 <arg name="sock_fd" type="fd"/>
1289 <request name="destroy" type="destructor"/>
1292 <interface name="tizen_input_device_manager" version="4">
1293 <description summary="global input device manager object">
1294 Tizen input device manager is a global interface. This object has device add/remove events
1295 to provide tizen input device object to a client. This allows for a client to get the con
1297 Be sure to bind this interface after binding wl_seat interface.
1298 Tizen input device manager interface will only provide device add/remove event for devices
1299 which belongs to the wl_seat object(s) bound by the client. Therefore, the compositor needs to
1300 create/send the device add/remove event only for the current client's seat(s).
1303 <event name="device_add">
1304 <description summary="device addition event">
1305 The device add/remove notification is going to be sent when a physical/logical device is
1306 added/removed to/from the given seat. Note that a tizen input device object can be assigned to
1307 a wl_seat and can also be assigned to the other wl_seat at any time. Whenever a relationship between
1308 a tizen input device object changes, device remove event from the current wl_seat object will be made
1309 and device add event to the other wl_seat object will also be mode.
1311 <arg name="serial" type="uint"/>
1312 <arg name="identifier" type="string"/>
1313 <arg name="device" type="new_id" interface="tizen_input_device"/>
1314 <arg name="seat" type="object" interface="wl_seat"/>
1317 <event name="device_remove">
1318 <description summary="device removal event">
1319 The device add/remove notification is going to be sent when a physical/logical device is
1320 added/removed to/from the given seat. Note that a tizen input device object can be assigned to
1321 a wl_seat and can also be assigned to the other wl_seat at any time. Whenever a relationship between
1322 a tizen input device object changes, device remove event from the current wl_seat object will be made
1323 and device add event to the other wl_seat object will also be mode.
1325 <arg name="serial" type="uint"/>
1326 <arg name="identifier" type="string"/>
1327 <arg name="device" type="object" interface="tizen_input_device"/>
1328 <arg name="seat" type="object" interface="wl_seat"/>
1332 <description summary="device class">
1334 <entry name="none" value="0" summary="none of class"/>
1335 <entry name="mouse" value="1" summary="mouse class"/>
1336 <entry name="keyboard" value="2" summary="keyboard class"/>
1337 <entry name="touchscreen" value="4" summary="touchscreen class"/>
1341 <entry name="none" value="0" summary="no error"/>
1342 <entry name="no_permission" value="1" summary="no permission"/>
1343 <entry name="invalid_class" value="2" summary="invalid class"/>
1344 <entry name="blocked_already" value="3" summary="blocked already by the other client"/>
1345 <entry name="no_system_resources" value="4" summary="no system resources such as memory lack"/>
1346 <entry name="invalid_parameter" value="5" summary="argument is invalid"/>
1347 <entry name="invalid_surface" value="6" summary="the given surface is not visible or pointer is not on the given surface"/>
1348 <entry name="no_pointer_available" value="7" summary="there is no pointer available to warp"/>
1349 <entry name="not_allowed" value="8" summary="this request is not allowed in this system"/>
1352 <event name="error">
1353 <description summary="error event">
1355 <arg name="errorcode" type="uint" enum="error"/>
1358 <event name="block_expired">
1359 <description summary="block expiration event">
1360 This event will be sent if the duration of existing block is expired.
1361 Note that no block expired event will be sent if there is no block for the client.
1365 <request name="block_events">
1366 <description summary="request to block sending event(s)">
1367 This request allows a client to request to block one or more events for its purpose.
1368 By specifying class as an argument in the request, the events belongs to the class will be blocked
1369 during the given duration. Note that an error event will be sent if there is any error.
1371 <arg name="serial" type="uint" summary=""/>
1372 <arg name="clas" type="uint" enum="clas"/>
1373 <arg name="duration" type="uint" summary="time duration with millisecond granularity"/>
1376 <request name="unblock_events">
1377 <description summary="request to unblock sending event(s)">
1378 This request allows a client to request to release the existing block for the client.
1379 Note that no error event will be sent if there is no existing block for the client.
1381 <arg name="serial" type="uint" summary=""/>
1384 <request name="init_generator">
1385 <description summary="initialize input generator system">
1387 <arg name="clas" type="uint" enum="clas"/>
1390 <request name="deinit_generator">
1391 <description summary="deinitialize input generator system">
1393 <arg name="clas" type="uint" enum="clas"/>
1396 <request name="generate_key">
1397 <description summary="generate a key event using specific or default device">
1399 <arg name="keyname" type="string"/>
1400 <arg name="pressed" type="uint"/>
1403 <enum name="pointer_event_type">
1404 <entry name="begin" value="0"/>
1405 <entry name="update" value="1"/>
1406 <entry name="end" value="2"/>
1409 <request name="generate_pointer">
1410 <description summary="generate a pointer event using specific or default device">
1412 <arg name="type" type="uint" enum="pointer_event_type"/>
1413 <arg name="x" type="uint"/>
1414 <arg name="y" type="uint"/>
1415 <arg name="button" type="uint"/>
1418 <request name="generate_touch">
1419 <description summary="generate a touch event using specific or default device">
1421 <arg name="type" type="uint" enum="pointer_event_type"/>
1422 <arg name="x" type="uint"/>
1423 <arg name="y" type="uint"/>
1424 <arg name="finger" type="uint"/>
1427 <request name="pointer_warp">
1428 <description summary="warp pointer to the relative position to the given surface">
1430 <arg name="surface" type="object" interface="wl_surface"/>
1431 <arg name="x" type="fixed"/>
1432 <arg name="y" type="fixed"/>
1435 <!-- version 2 additions -->
1436 <request name="init_generator_with_name" since="2">
1437 <description summary="initialize input generator system with name">
1439 <arg name="clas" type="uint" enum="clas"/>
1440 <arg name="name" type="string" />
1443 <request name="destroy" type="destructor" since="2">
1444 <description summary="destroy the tizen_input_device_manager">
1445 Destroy the tizen_input_device_manager.
1449 <!-- version 3 additions -->
1450 <enum name="axis_type" since="3">
1451 <entry name="none" value="0" summary="no axis type"/>
1452 <entry name="wheel" value="1" summary="pointer vertical wheel axis"/>
1453 <entry name="hwheel" value="2" summary="pointer horizental wheel axis"/>
1454 <entry name="radius_x" value="3" summary="touch radius of x axis of an event area e.g. touching area with a finger or a pen"/>
1455 <entry name="radius_y" value="4" summary="touch radius of y axis of an event area e.g. touching area with a finger or a pen"/>
1456 <entry name="pressure" value="5" summary="touch pressure in an event area e.g. touching area with a finger or a pen"/>
1457 <entry name="angle" value="6" summary="touch angle in an event area e.g. touching area with a finger or a pen"/>
1458 <entry name="palm" value="7" summary="touch palm in an event area e.g. touching area with a finger or a pen"/>
1461 <request name="generate_axis" since="3">
1462 <description summary="generate a pointer/touch axes event using specific or default device">
1463 When the server got this request, the server choices generate a event directly or just save values.
1464 Pointer axes (such as wheel/hwheel) are delivered to clients independantly about pointer events,
1465 but touch axes are delivered to normal touch events(begin/update/end).
1466 So the server just save touch axes before generate touch request is came and send a touch event
1467 include saved touch axes value.
1469 <arg name="type" type="uint" enum="axis_type"/>
1470 <arg name="value" type="fixed" summary="axis value"/>
1473 <!-- version 4 additions -->
1474 <event name="max_touch_count" since="4">
1475 <description summary="notify max slot of touch device is updated">
1476 Each touch devices has their own touch counts can be supported.
1477 So a server controls maximum touches in this system to maintain resources efficiently.
1478 Sometimes a server controls maximum touches using a predefined configuration option.
1479 Sometimes a server ensures maximum touches to be supported by touch device.
1480 If a server do not use configuration option, maximum touches can be updated when new touch devices are connected.
1481 So this events can be sent to client, when a first touch device is added or maximum touches is changed.
1483 <arg name="serial" type="uint"/>
1484 <arg name="max_count" type="int"/>
1485 <arg name="seat" type="object" interface="wl_seat"/>
1488 <request name="set_touch_count" since="4">
1489 <description summary="set a max slot of touch">
1490 This request only changes system's touch count.
1491 So this request doesn't change already connected touch devices's max count.
1492 This will influence to user created device using input generator.
1493 Input generator creates touch device only supports default touch count.
1494 But if user set touch count before create a Input generator device,
1495 user can create touch device has touch count user wanted.
1496 But some systems has their own maximum touch count.
1497 In that case this request returns error not_allowed.
1499 <arg name="max_count" type="int"/>
1503 <interface name="tizen_input_device" version="1">
1504 <description summary="tizen input device object">
1505 The tizen_input_device interface represents one or more input devices associated with a physical/logical
1506 input device. This interface provides device specific information/events to allows for client to identify
1507 the source device of an event or to get the additional axes/attributes of a device.
1508 Note that a tizen_input_device object can be used for a physical input device and can also be used for a
1509 group of input devices. e.g. a group of mouse devices
1513 <description summary="device class">
1515 <entry name="none" value="0" summary="none of class"/>
1516 <entry name="keyboard" value="2" summary="keyboard class"/>
1517 <entry name="mouse" value="3" summary="mouse class"/>
1518 <entry name="touchscreen" value="4" summary="touchscreen class"/>
1521 <enum name="subclas">
1522 <description summary="device subclass">
1524 <entry name="none" value="0" summary="none of subclass"/>
1527 <enum name="axis_type">
1528 <description summary="axis type enums which can be supported by a device">
1530 <entry name="none" value="0" summary="radius of x axis of an event area e.g. touching area with a finger or a pen"/>
1531 <entry name="radius_x" value="1" summary="radius of x axis of an event area e.g. touching area with a finger or a pen"/>
1532 <entry name="radius_y" value="2" summary="radius of y axis of an event area e.g. touching area with a finger or a pen"/>
1533 <entry name="pressure" value="3" summary="pressure in an event area e.g. touching area with a finger or a pen"/>
1534 <entry name="angle" value="4" summary="angle in an event area e.g. touching area with a finger or a pen"/>
1535 <entry name="detent" value="5" summary="detent value e.g. moved distance with a rotary device"/>
1538 <event name="device_info">
1539 <description summary="event contains device information">
1541 <arg name="name" type="string"/>
1542 <arg name="clas" type="uint" enum="clas"/>
1543 <arg name="subclas" type="uint" enum="subclas"/>
1544 <arg name="axes" type="array" summary="array of axis enum"/>
1547 <event name="event_device">
1548 <description summary="event indicates the source device associated with a wl_pointer/keyboard/touch event">
1550 <arg name="serial" type="uint"/>
1551 <arg name="name" type="string"/>
1552 <arg name="time" type="uint" summary="timestamp with millisecond granularity"/>
1555 <request name="select_axes">
1556 <description summary="request for selecting some of axes among the axes supported by a tizen_input_device object">
1558 <arg name="axes" type="array" summary="array of axis num"/>
1562 <description summary="axis change event">
1564 <arg name="axis_type" type="uint" enum="axis_type"/>
1565 <arg name="value" type="fixed" summary="axis value"/>
1568 <request name="release" type="destructor">
1569 <description summary="release the tizen_input_device object">
1574 <interface name="tizen_launchscreen" version="1">
1575 <request name="create_img">
1576 <arg name="id" type="new_id" interface="tizen_launch_image" summary="new tizen_launch_image object"/>
1579 <request name="destroy" type="destructor">
1580 <description summary="destroy the tizen_launchscreen">
1581 Destroy the tizen_launchscreen.
1587 <interface name="tizen_launch_image" version="1">
1589 <enum name="file_type">
1590 <entry name="img" value="0" summary="splash image file path"/>
1591 <entry name="edj" value="1" summary="splash edj file path"/>
1594 <enum name="indicator">
1595 <entry name="off" value="0" summary="splash hide indicator"/>
1596 <entry name="on" value="1" summary="splash show indicator"/>
1599 <enum name="rotation">
1600 <entry name="0" value="0" summary="rotation angle 0 degree"/>
1601 <entry name="90" value="90" summary="rotation angle 90 degree"/>
1602 <entry name="180" value="180" summary="rotation angle 180 degree"/>
1603 <entry name="270" value="270" summary="rotation angle 270 degree"/>
1606 <request name="destroy" type="destructor"/>
1608 <request name="launch">
1609 <arg name="file" type="string"/>
1610 <arg name="file_type" type="uint" />
1611 <arg name="color_depth" type="uint" />
1612 <arg name="rotation" type="uint" />
1613 <arg name="indicator" type="uint" />
1614 <arg name="options" type="array" />
1617 <request name="owner">
1618 <arg name="pid" type="uint" />
1621 <request name="show">
1624 <request name="hide">
1628 <interface name="tizen_effect" version="1">
1630 <entry name="none" value="0" summary="none"/>
1631 <entry name="show" value="1" summary="show effect of window"/>
1632 <entry name="hide" value="2" summary="hide effect of window"/>
1633 <entry name="restack" value="3" summary="restack effect of window"/>
1635 <request name="destroy" type="destructor" />
1636 <event name="start">
1637 <arg name="surface" type="object" interface="wl_surface"/>
1638 <arg name="type" type="uint" />
1641 <arg name="surface" type="object" interface="wl_surface"/>
1642 <arg name="type" type="uint" />
1646 <interface name="tizen_display_policy" version="1">
1647 <enum name="error_state">
1648 <entry name="none" value="0"/>
1649 <entry name="permission_denied" value="1"/>
1651 <!-- for window brightness -->
1652 <request name="set_window_brightness">
1653 <arg name="surface" type="object" interface="wl_surface"/>
1654 <arg name="brightness" type="int"/>
1657 <event name="window_brightness_done">
1658 <arg name="surface" type="object" interface="wl_surface"/>
1659 <arg name="brightness" type="int"/>
1660 <arg name="error_state" type="uint"/>
1663 <request name="destroy" type="destructor">
1664 <description summary="destroy the tizen_display_policy">
1665 Destroy the tizen_display_policy.
1671 <interface name="tizen_indicator" version="1">
1673 <entry name="unknown" value="0" summary="unknown"/>
1674 <entry name="off" value="1" summary="can not show indicator"/>
1675 <entry name="on" value="2" summary="can show indicator"/>
1677 <enum name="opacity_mode">
1678 <entry name="unknown" value="0" summary="unknown"/>
1679 <entry name="opaque" value="1" summary="opaque mode"/>
1680 <entry name="translucent" value="2" summary="translucent mode"/>
1681 <entry name="transparent" value="3" summary="transparent all mode"/>
1682 <entry name="bg_transparent" value="4" summary="transparent only background mode"/>
1684 <enum name="visible_type">
1685 <entry name="hidden" value="0" summary="hidden type indicator"/>
1686 <entry name="shown" value="1" summary="shown type indicator"/>
1689 <request name="destroy" type="destructor"/>
1690 <request name="set_state">
1691 <arg name="surface" type="object" interface="wl_surface" summary="surface object"/>
1692 <arg name="state" type="int" />
1694 <request name="set_opacity_mode">
1695 <arg name="surface" type="object" interface="wl_surface" summary="surface object"/>
1696 <arg name="mode" type="int" />
1698 <request name="set_visible_type">
1699 <arg name="surface" type="object" interface="wl_surface" summary="surface object"/>
1700 <arg name="type" type="int" />
1703 <event name="flick">
1704 <arg name="surface" type="object" interface="wl_surface" summary="occur the flick event"/>
1705 <arg name="type" type="int"/>
1709 <interface name="tizen_clipboard" version="2">
1710 <description summary="an interface for requests and event about clipboard">
1711 This interface provides some requests and events about clipboard for other clients.
1713 <request name="destroy" type="destructor" />
1714 <request name="show">
1715 <description summary="request for show clipboard">
1717 <arg name="surface" type="object" interface="wl_surface" summary="surface object"/>
1719 <request name="hide">
1720 <description summary="request for hide clipboard">
1722 <arg name="surface" type="object" interface="wl_surface" summary="surface object"/>
1724 <event name="data_selected">
1725 <description summary="announce data are selected by clipboard">
1727 <arg name="surface" type="object" interface="wl_surface" summary="surface object"/>
1730 <!-- version 2 additions -->
1731 <request name="set_data_only" since="2">
1732 <description summary="request for setting data only mode for this wl_client">
1733 A wayland client can notify of that the client is data only mode.
1734 The data only mode means that this wayland client doesn't have any
1735 wl_surfaces at all but it wants to use wl_data_device for some data
1738 <arg name="set" type="uint" />
1741 <event name="allowed_data_only" since="2">
1742 <description summary="event to notify if data only set is allowed or not"/>
1743 <arg name="allowed" type="uint" />
1747 <interface name="tizen_screen_rotation" version="1">
1748 <request name="get_ignore_output_transform">
1749 <arg name="surface" type="object" interface="wl_surface" summary="surface object"/>
1752 <event name="ignore_output_transform">
1753 <arg name="surface" type="object" interface="wl_surface" summary="surface object"/>
1754 <arg name="ignore" type="uint"/>
1757 <request name="destroy" type="destructor">
1758 <description summary="destroy the tizen_screen_rotation">
1759 Destroy the tizen_screen_rotation.
1765 <interface name="tizen_renderer" version="1">
1766 <request name="get_renderer_surface">
1767 <arg name="id" type="new_id" interface="tizen_renderer_surface" />
1768 <arg name="surface" type="object" interface="wl_surface" />
1771 <request name="destroy" type="destructor">
1772 <description summary="destroy the tizen_renderer">
1773 Destroy the tizen_renderer
1778 <interface name="tizen_renderer_surface" version="1">
1779 <event name="redraw_request">
1782 <request name="destroy" type="destructor">
1783 <description summary="destroy the tizen_renderer_surface">
1784 Destroy the tizen_renderer_surface