From b92397ef12626a0d09cb4c9e853d0c038104110f Mon Sep 17 00:00:00 2001 From: Marius Vlad Date: Thu, 25 Aug 2022 19:04:29 +0300 Subject: shell: Remove the black curtain installed on outputs Upon completion of activation we might have an output without a background surface set-up on that particular output, so this patch either uses the black curtain as a background surface (useful for transparent applications, which need it) or we remove it entirely in case the shell client has one installed. The patch renames the black_surface to black_curtain to better reflect its name. Also output filtering would need renaming (desktop_surface_check_last_surfaces) Bug-AGL: SPEC-4516 Reported-by: Vasyl Vavrychuk Signed-off-by: Marius Vlad Change-Id: I6071b07664772d891a4d8c33a7603573ec2069fa --- src/ivi-compositor.h | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'src/ivi-compositor.h') diff --git a/src/ivi-compositor.h b/src/ivi-compositor.h index 7302348..bc5cc68 100644 --- a/src/ivi-compositor.h +++ b/src/ivi-compositor.h @@ -262,6 +262,7 @@ struct ivi_surface { struct weston_desktop_surface *dsurface; struct weston_view *view; struct ivi_output *hidden_layer_output; + struct ivi_output *current_completed_output; struct wl_list link; int focus_count; @@ -416,10 +417,13 @@ struct ivi_output * ivi_layout_get_output_from_surface(struct ivi_surface *surf); void -insert_black_surface(struct ivi_output *output); +insert_black_curtain(struct ivi_output *output); void -remove_black_surface(struct ivi_output *output); +remove_black_curtain(struct ivi_output *output); + +bool +output_has_black_curtain(struct ivi_output *output); const char * ivi_layout_get_surface_role_name(struct ivi_surface *surf); -- cgit 1.2.3-korg