[PATCH weston 1/5] ivi-shell: add shell surface labels

Eugen Friedrich friedrix at gmail.com
Thu Mar 24 10:25:45 UTC 2016


2016-03-22 15:48 GMT+01:00 Pekka Paalanen <ppaalanen at gmail.com>:

> From: Pekka Paalanen <pekka.paalanen at collabora.co.uk>
>
> To be used by the Weston timeline feature for identifying surfaces in a
> trace. The 'get_label' functionality can also be used by any debugging
> code, too.
>
> Signed-off-by: Pekka Paalanen <pekka.paalanen at collabora.co.uk>
> ---
>  ivi-shell/ivi-shell.c | 16 ++++++++++++++++
>  1 file changed, 16 insertions(+)
>
> diff --git a/ivi-shell/ivi-shell.c b/ivi-shell/ivi-shell.c
> index 2ff3784..9c11f6f 100644
> --- a/ivi-shell/ivi-shell.c
> +++ b/ivi-shell/ivi-shell.c
> @@ -121,6 +121,19 @@ ivi_shell_surface_configure(struct weston_surface
> *surface,
>         }
>  }
>
> +static int
> +ivi_shell_surface_get_label(struct weston_surface *surface,
> +                           char *buf,
> +                           size_t len)
> +{
> +       struct ivi_shell_surface *shell_surf =
> get_ivi_shell_surface(surface);
> +
> +       if (!shell_surf)
> +               return snprintf(buf, len, "unidentified window in
> ivi-shell");
> +
> +       return snprintf(buf, len, "ivi-surface %#x",
> shell_surf->id_surface);
> +}
> +
>  static void
>  layout_surface_cleanup(struct ivi_shell_surface *ivisurf)
>  {
> @@ -131,6 +144,7 @@ layout_surface_cleanup(struct ivi_shell_surface
> *ivisurf)
>
>         ivisurf->surface->configure = NULL;
>         ivisurf->surface->configure_private = NULL;
> +       weston_surface_set_label_func(ivisurf->surface, NULL);
>         ivisurf->surface = NULL;
>
>         // destroy weston_surface destroy signal.
> @@ -262,6 +276,8 @@ application_surface_create(struct wl_client *client,
>
>         weston_surface->configure = ivi_shell_surface_configure;
>         weston_surface->configure_private = ivisurf;
> +       weston_surface_set_label_func(weston_surface,
> +                                     ivi_shell_surface_get_label);
>
>         res = wl_resource_create(client, &ivi_surface_interface, 1, id);
>         if (res == NULL) {
> --
> 2.7.3
>
> _______________________________________________
> wayland-devel mailing list
> wayland-devel at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/wayland-devel
>

Looks good
Reviewed-by: Eugen Friedrich <friedrix at gmail.com>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/wayland-devel/attachments/20160324/d53a68c7/attachment.html>


More information about the wayland-devel mailing list