1*4882a593SmuzhiyunFrom ac9bb72d96af6b834450a91fbc878369240110ae Mon Sep 17 00:00:00 2001
2*4882a593SmuzhiyunFrom: Jeffy Chen <jeffy.chen@rock-chips.com>
3*4882a593SmuzhiyunDate: Tue, 23 Mar 2021 22:34:54 +0800
4*4882a593SmuzhiyunSubject: [PATCH 42/79] desktop-shell: Disable fullscreen black background by
5*4882a593Smuzhiyun default
6*4882a593Smuzhiyun
7*4882a593SmuzhiyunThere's a force black background for fullscreen views.
8*4882a593Smuzhiyun
9*4882a593SmuzhiyunLet's disable it by default, set this env to enable:
10*4882a593Smuzhiyun"WESTON_FULLSCREEN_BLACK_BACKGROUND"
11*4882a593Smuzhiyun
12*4882a593SmuzhiyunSigned-off-by: Jeffy Chen <jeffy.chen@rock-chips.com>
13*4882a593Smuzhiyun---
14*4882a593Smuzhiyun desktop-shell/shell.c | 7 ++++---
15*4882a593Smuzhiyun 1 file changed, 4 insertions(+), 3 deletions(-)
16*4882a593Smuzhiyun
17*4882a593Smuzhiyundiff --git a/desktop-shell/shell.c b/desktop-shell/shell.c
18*4882a593Smuzhiyunindex a8b8f35..ce6d660 100644
19*4882a593Smuzhiyun--- a/desktop-shell/shell.c
20*4882a593Smuzhiyun+++ b/desktop-shell/shell.c
21*4882a593Smuzhiyun@@ -2146,7 +2146,8 @@ shell_configure_fullscreen(struct shell_surface *shsurf)
22*4882a593Smuzhiyun 		return;
23*4882a593Smuzhiyun 	}
24*4882a593Smuzhiyun
25*4882a593Smuzhiyun-	shell_ensure_fullscreen_black_view(shsurf);
26*4882a593Smuzhiyun+	if (getenv("WESTON_FULLSCREEN_BLACK_BACKGROUND"))
27*4882a593Smuzhiyun+		shell_ensure_fullscreen_black_view(shsurf);
28*4882a593Smuzhiyun
29*4882a593Smuzhiyun 	surface_subsurfaces_boundingbox(surface, &surf_x, &surf_y,
30*4882a593Smuzhiyun 	                                &surf_width, &surf_height);
31*4882a593Smuzhiyun@@ -3752,7 +3753,7 @@ lower_fullscreen_layer(struct desktop_shell *shell,
32*4882a593Smuzhiyun
33*4882a593Smuzhiyun 		/* We can have a non-fullscreen popup for a fullscreen surface
34*4882a593Smuzhiyun 		 * in the fullscreen layer. */
35*4882a593Smuzhiyun-		if (weston_desktop_surface_get_fullscreen(shsurf->desktop_surface)) {
36*4882a593Smuzhiyun+		if (weston_desktop_surface_get_fullscreen(shsurf->desktop_surface) && shsurf->fullscreen.black_view) {
37*4882a593Smuzhiyun 			/* Hide the black view */
38*4882a593Smuzhiyun 			weston_layer_entry_remove(&shsurf->fullscreen.black_view->layer_link);
39*4882a593Smuzhiyun 			wl_list_init(&shsurf->fullscreen.black_view->layer_link.link);
40*4882a593Smuzhiyun@@ -4522,7 +4523,7 @@ switcher_next(struct switcher *switcher)
41*4882a593Smuzhiyun 		view->alpha = 1.0;
42*4882a593Smuzhiyun
43*4882a593Smuzhiyun 	shsurf = get_shell_surface(switcher->current->surface);
44*4882a593Smuzhiyun-	if (shsurf && weston_desktop_surface_get_fullscreen(shsurf->desktop_surface))
45*4882a593Smuzhiyun+	if (shsurf && weston_desktop_surface_get_fullscreen(shsurf->desktop_surface) && shsurf->fullscreen.black_view)
46*4882a593Smuzhiyun 		shsurf->fullscreen.black_view->alpha = 1.0;
47*4882a593Smuzhiyun }
48*4882a593Smuzhiyun
49*4882a593Smuzhiyun--
50*4882a593Smuzhiyun2.20.1
51*4882a593Smuzhiyun
52