Hi,

 

>1) weston --tty=1 (using tty screens) Is it the right way.. I do this because 
I can see the logs.. Is there any way to use gdb while using weston ??
At first, you can set the environment value: WAYLAND_DEBUG=1 to observe if 
wayland application bind wl_shell and create wl_shell_surface. It might be 
sufficient.

 

>(HTML not rendering on wl_shell) ??

Maybe. But if the caller of IVIsurfaceCreator calls it with wrong process ID, 
IVIsurfaceCreator can not find any wl_shell_surface. If you clearly know the 
process ID, I recommend you to execute IVIsurefaceCreator by hand. How to use 
it, see wiki.

https://wiki.tizen.org/wiki/Wayland_ivi-shell

 

BR,

Nobuhiko Tanibata

 

From: karthik karthik [mailto:[email protected]] 
Sent: Tuesday, July 29, 2014 2:32 PM
To: Tanibata, Nobuhiko (ADITJ/SWG); [email protected]
Subject: Re: Questions on weston-ivi-shell

 

 


Hi,

    Surely will try with the debug option.. Currently I am launching weston in 
the following way 

    1) weston --tty=1 (using tty screens) Is it the right way.. I do this 
because I can see the logs.. Is there any way to use gdb while using weston ??

    2) From your previous input that the HTML5 might not be using wl_shell (can 
this be put as seperate question in the forum !!), I tried the following..

        I put a few prints in the following function 
"controller_get_native_handle" in ivi-controller.c.. I beleive this is called 
from the IVISurfaceCreator while we create ivi_surface. When I checked out, the 
test I running doesnt even enter the wl_array_for_each loop. Does this means no 
surface are available (HTML not rendering on wl_shell) ??

static void
controller_get_native_handle(struct wl_client *client,
                             struct wl_resource *resource,
                             uint32_t id_process,
                             const char *title)
{
    struct wl_array surfaces;
    ivi_shell_get_shell_surfaces(&surfaces);
    struct shell_surface ** surface;
 
    wl_array_for_each(surface, &surfaces) {
 
        uint32_t pid = shell_surface_get_process_id(*surface);
        if (pid != id_process) {
            continue;
        }
 
        if (title) {
            char* surface_title = shell_surface_get_title(*surface);
            if (strcmp(title, surface_title)) {
                continue;
            }
        }
 
        struct weston_surface *es = shell_surface_get_surface(*surface);
        if (es) {
            struct wl_resource *res = wl_resource_create(client, 
&wl_surface_interface, 1, 0);
            wl_resource_set_user_data(res, es);
 
            ivi_controller_send_native_handle(resource, res);
        }
    }
 
    wl_array_release(&surfaces);
 
    int32_t id_object = 0;
    ivi_controller_send_error(
        resource, id_object, IVI_CONTROLLER_OBJECT_TYPE_SURFACE,
        IVI_CONTROLLER_ERROR_CODE_NATIVE_HANDLE_END, "");
}

3) Meanwhile, I like to understand what the
 above code does ??

   a) Is this api "ivi_shell_get_shell_surfaces" for ivi_shell, and not for the 
wl_shell.

Thanks,
Sathish
   

On Tuesday, 29 July 2014 6:11 AM, "Tanibata, Nobuhiko (ADITJ/SWG)" 
<[email protected]> wrote:

 

Hi,

You can try WAYLAND_DEBUG=1 with Weston and application to see its behavior 
with detail logs.
You can observe what happens on it. If you can provide basement of snapshot and 
sandbox of your modification, I can try.

BR,
Nobuhiko Tanibata

> -----Original Message-----
> From: IVI [mailto:[email protected]] On Behalf Of karthik
> karthik
> Sent: Monday, July 28, 2014 8:18 PM
> To: [email protected]
> Subject: RE: Questions on weston-ivi-shell
> 
> 
> 
> Hi,
> 
> Can you clarify a few things please..
> 
>    I tried running the application again
> 
>      The error i m facing is not constant.
> 
>      Sometimes, i do get the HTML screen. That means it is creating a
> wl shell.
> 
>      So when i launch weston, 3 out of 10 i get html page. But for the
> other 7 times, i get a blank screen.
> 
>      So what i see is some instability..
> 
>      When i had tried to launch the screen without weston, there is no
> problem in the launch.
> 
> Thanks,
> Sathish
> 
> ------------------------------
> On Mon 28 Jul, 2014 12:50 AM BST Tanibata, Nobuhiko (ADITJ/SWG) wrote:
> 
> >Hi,
> >
> >
> >
> >> there is a ivi_shell similar to desktop_shell that is used..
> >Yes. But it shall be discussed in Tizne IVI al well.
> >
> >
> >
> >> IVISurfaceCreator.
> >
> >Try it by hand. And please check if your application create wl_shell
> correctly.
> >
> >I think HTML5 framework only support xdg-shell.. So IVIsurfaceCreator
> can not find any wl_shell, I assume.
> >
> >
> >
> >BR,
> >
> >Nobuhiko Tanibata
> >
> >
> >
> >
> >
> >
> >
> >From: IVI [mailto:[email protected]] On Behalf Of karthik
> karthik
> >Sent: Saturday, July 26, 2014 8:43 PM
> >To: [email protected]
> >Subject: Re: Questions on weston-ivi-shell
> >
> >
> >
> >Hi,
> >
> >Thanks for the reply,
> >
> >I have a few doubts. Can you clarify them for me.
> >
> >1) "Additionally, supporting wl_shell on ivi-shell is temporary."..
> >
> >Does this mean the following.
> >
> >Currently, wl_shell, the default shell in wayland/weston is supported
> on tizen.. But outside of tizen, there is a ivi_shell similar to
> desktop_shell that is used..
> >
> >Can you point me to some documentation on wl_shell so that I can
> understand it better ??
> >
> >2) I am trying to modify weston-ivi-shell, a bit. Instead of launching
> application binaries, I want to launch HTML5 web apps.
> >
> >I took the ICO Homescreen as example and launching the apps using tizen
> application api's namely "aul_app_launch".
> >
> >When I launch these applications, I am facing issues in
> IVISurfaceCreator..
> >
> >When I run the program, the api returns a success on launch..
> >
> >What I dont get to see application on the display each time..
> >
> >If I look at the log, I could see this print statement printed 10 times..
> >
> >              printf("IVISurfaceCreator: Search of native handle was
> ended.\n"
> >                      " But no surface was created.\n"
> >                      " Retry get_native_handle.\n");
> >
> >Is there a reason why this is happening.. Can you help me with this..
> >
> >Thanks,
> >Sathish
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >On Wednesday, 23 July 2014 7:21 AM, "Tanibata, Nobuhiko (ADITJ/SWG)"
> <[email protected]> wrote:
> >
> >
> >
> >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

_______________________________________________
IVI mailing list
[email protected]
https://lists.tizen.org/listinfo/ivi

Reply via email to