[PATCH weston 1/3] shell: Fix artifacts caused by workspace change animation

Jasper St. Pierre jstpierre at mecheye.net
Wed May 7 06:10:24 PDT 2014


Hm, it seems to me that hiding a layer should cause all the regions it
occupied to be marked as needing repaint. Fixing the scene graph is better
than a one-off at the end of an animation.


On Wed, May 7, 2014 at 4:57 AM, Ander Conselvan de Oliveira <
conselvan2 at gmail.com> wrote:

> From: Ander Conselvan de Oliveira <ander.conselvan.de.oliveira at intel.com>
>
> Views that extend past the bottom of the output are still visible after
> the workspace animation ends but before its layer is hidden. When the
> layer was hidden, nothing would cause those regions to be repainted,
> leading to artifacts.
>
> https://bugs.freedesktop.org/show_bug.cgi?id=78363
> ---
>  desktop-shell/shell.c | 9 +++++++++
>  1 file changed, 9 insertions(+)
>
> diff --git a/desktop-shell/shell.c b/desktop-shell/shell.c
> index a631c62..fac3120 100644
> --- a/desktop-shell/shell.c
> +++ b/desktop-shell/shell.c
> @@ -1027,8 +1027,17 @@ finish_workspace_change_animation(struct
> desktop_shell *shell,
>                                   struct workspace *from,
>                                   struct workspace *to)
>  {
> +       struct weston_view *view;
> +
>         weston_compositor_schedule_repaint(shell->compositor);
>
> +       /* Views that extend past the bottom of the output are still
> +        * visible after the workspace animation ends but before its layer
> +        * is hidden. In that case, we need to damage below those views so
> +        * that the screen is properly repainted. */
> +       wl_list_for_each(view, &from->layer.view_list, layer_link)
> +               weston_view_damage_below(view);
> +
>         wl_list_remove(&shell->workspaces.animation.link);
>         workspace_deactivate_transforms(from);
>         workspace_deactivate_transforms(to);
> --
> 1.8.3.2
>
> _______________________________________________
> wayland-devel mailing list
> wayland-devel at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/wayland-devel
>



-- 
  Jasper
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/wayland-devel/attachments/20140507/d5e375c8/attachment.html>


More information about the wayland-devel mailing list