Hi,
I will update the following info to wiki as well. Additionally,
supporting wl_shell on ivi-shell is temporary.
If application supports ivi_application.create_surface, you don't have
to use IVISurfaceCreater to map wl_surface to Global ID.
If you want to show application only supports wl_shell,
IVISurfaceCreater is useful tool.
a) Launch application using system calls. The application on launch,
will render the graphics on the wayland surface.
Steps 1 and 2 mentioned above will done in the application itself.
IVISurfaceCreator --help
Usage: IVISurfaceCreator <Process ID> <Window Title> <IVI-Surface ID>
IVISurfaceCreator is a Tool to map wl_surface to GlobalID: <IVI-Surface
ID>. "Window Title" is set by using wl_shell_surface::set_title.
E.g. Weston-flower names its title as "Flower". If you set NULL to the
parameter, IVIsurfaceCreator will map the oldest wl_surface to the ID.
As usual, Weston client example create only one wl_surface in its
process. The title is not so important parameter.
After that, you can use <IVI-Surface ID> to control the wl_surface by
using ivi layout APIs.
If you want to get notification when an application create
wl_shell_surface, you can use the following event in
ivi_application.xml, extension event for TIZEN IVI only.
<event name="wl_shell_info">
<arg name="pid" type="int"/>
<arg name="title" type="string" allow-null="true"/>
</event>
BR,
Nobuhiko
From: IVI [mailto:[email protected]] On Behalf Of karthik
karthik
Sent: Wednesday, July 23, 2014 1:56 AM
To: [email protected]
Subject: Questions on weston-ivi-shell
Hi,
In the process of trying to understand layer management, I had
understood the following. Need some help to check whether I am right
with these understanding.
Steps :-
To put an image file on to a layer :-
1) Use wl_compositor_create_surface to create a wayland surface.
2) Write the image data on to the wayland surface.
3) Use ivi_application_surface_create api to tie the wayland surface
with the Global ID.
4) Now to add it to a Layer,
a) Use the global ID to extract the surface using the API
weston_layout_getSurfacefromID.
b) The resultant surface is added to the layer using the API
weston_layout_addSurfacetoLayer.
To put an application on to a layer :-
a) Launch application using system calls. The application on launch,
will render the graphics on the wayland surface.
Steps 1 and 2 mentioned above will done in the application itself.
b) Launch IVISurfaceCreator. The Global ID is passed via arguments to
the IVISurfaceCreator.
c) IVISurfaceCreator calls the ivi_application_surface_create api's to
tie the wayland surface with the Global ID.
d) Now to add it to a layer, it is similar to step 4 mentioned above..
Is this understanding correct ??
Thanks,
_______________________________________________
IVI mailing list
[email protected]
https://lists.tizen.org/listinfo/ivi