desktop-shell: Damage subsurfaces when minimizing

Fixes an issue where subsurface extending outside of the main surface
wasn't damaged when minimized resulting in left-over content.

Signed-off-by: Jonas Ådahl <jadahl@gmail.com>
dev
Jonas Ådahl 3 years ago
parent 0b51b02c5e
commit 56958aa6e9
  1. 6
      desktop-shell/shell.c

@ -2057,6 +2057,7 @@ set_minimized(struct weston_surface *surface)
struct shell_surface *shsurf; struct shell_surface *shsurf;
struct workspace *current_ws; struct workspace *current_ws;
struct weston_view *view; struct weston_view *view;
struct weston_subsurface *subsurface;
view = get_default_view(surface); view = get_default_view(surface);
if (!view) if (!view)
@ -2074,8 +2075,13 @@ set_minimized(struct weston_surface *surface)
surface_keyboard_focus_lost(surface); surface_keyboard_focus_lost(surface);
shell_surface_update_child_surface_layers(shsurf); shell_surface_update_child_surface_layers(shsurf);
weston_view_damage_below(shsurf->view);
wl_list_for_each(subsurface, &surface->subsurface_list, parent_link) {
wl_list_for_each(view, &subsurface->surface->views, surface_link)
weston_view_damage_below(view); weston_view_damage_below(view);
} }
}
static struct desktop_shell * static struct desktop_shell *

Loading…
Cancel
Save