1 From 3b7c9b7458976ea7f1e57796149d4ed4c56d9225 Mon Sep 17 00:00:00 2001
2 From: Michael Tretter <m.tretter@pengutronix.de>
3 Date: Thu, 23 Aug 2018 16:58:47 +0200
4 Subject: [PATCH] compositor: do not request repaint in output_enable
6 When enabling a weston_output, the compositor damages the entire output,
7 to ensure that the entire output is redrawn. However, this triggers a
8 repaint, which might happen before anything is actually drawn. The
9 result is a black frame before the shell is displayed.
11 Damage the entire output region, but do not trigger the repaint when
12 enabling a weston_output.
14 Signed-off-by: Michael Tretter <m.tretter@pengutronix.de>
16 libweston/compositor.c | 4 +++-
17 1 file changed, 3 insertions(+), 1 deletion(-)
19 diff --git a/libweston/compositor.c b/libweston/compositor.c
20 index 6e965372..34d8483c 100644
21 --- a/libweston/compositor.c
22 +++ b/libweston/compositor.c
23 @@ -6471,7 +6471,9 @@ weston_output_enable(struct weston_output *output)
24 weston_output_init_zoom(output);
26 weston_output_init_geometry(output, x, y);
27 - weston_output_damage(output);
28 + pixman_region32_union(&c->primary_plane.damage,
29 + &c->primary_plane.damage,
32 wl_list_init(&output->animation_list);
33 wl_list_init(&output->feedback_list);