[PATCH weston 5/5] ivi-shell: forward zero size to controller

jeka friedrix at gmail.com
Wed Mar 23 22:50:13 UTC 2016


Hi,

this is indeed a change in behavior, there is a case in ivi-controller 
where the ivi surface has not width and height it is the time between 
the ivi surface is created but the corresponding wayland surface did not 
received any buffer so far. Of cause wayland surface might also get 
buffer attached with size zero but this case is not properly handled 
currently.

I would like to skip this patch for the time being

On 22.03.2016 15:48, Pekka Paalanen wrote:
> From: Pekka Paalanen <pekka.paalanen at collabora.co.uk>
>
> When surface size changes to zero, do not ignore it, but forward that
> change to the controller. A controller should do what's proper for a
> surface that just lost its content.
>
> Signed-off-by: Pekka Paalanen <pekka.paalanen at collabora.co.uk>
> ---
>   ivi-shell/hmi-controller.c | 2 ++
>   ivi-shell/ivi-shell.c      | 3 ---
>   2 files changed, 2 insertions(+), 3 deletions(-)
>
> diff --git a/ivi-shell/hmi-controller.c b/ivi-shell/hmi-controller.c
> index e9c9ab0..7c96439 100644
> --- a/ivi-shell/hmi-controller.c
> +++ b/ivi-shell/hmi-controller.c
> @@ -660,6 +660,8 @@ set_notification_configure_surface(struct ivi_layout_surface *ivisurf,
>   	 */
>   	surface = ivi_layout_interface->surface_get_weston_surface(ivisurf);
>   	if (surface) {
> +		/* XXX: needs to handle zero size by unmapping the surface */
> +
>   		ivi_layout_interface->surface_set_source_rectangle(
>   			ivisurf, 0, 0, surface->width,
>   			surface->height);
> diff --git a/ivi-shell/ivi-shell.c b/ivi-shell/ivi-shell.c
> index c502c74..fe86c27 100644
> --- a/ivi-shell/ivi-shell.c
> +++ b/ivi-shell/ivi-shell.c
> @@ -118,9 +118,6 @@ ivi_shell_surface_configure(struct weston_surface *surface,
>   	if (!ivisurf)
>   		return;
>
> -	if (surface->width == 0 || surface->height == 0)
> -		return;
> -
>   	if (ivisurf->width != surface->width ||
>   	    ivisurf->height != surface->height) {
>   		ivisurf->width  = surface->width;
>


More information about the wayland-devel mailing list