Clear framebuffer before drawing borders (#4308)

Clear framebuffer before copying surface to prevent visual garbage

Fixes #3481
Corrects problems of #4280
This commit is contained in:
Tristan Giles
2021-01-03 00:36:43 -08:00
committed by GitHub
parent d3d2612eba
commit 057a635279

View File

@ -535,6 +535,10 @@ void x_draw_decoration(Con *con) {
con->pixmap_recreated = false; con->pixmap_recreated = false;
con->mark_changed = false; con->mark_changed = false;
/* Clear background before drawing. Clearing here makes sure we are in a
* state where we are expected to redraw the borders */
draw_util_clear_surface(&(con->frame_buffer), (color_t){.red = 0.0, .green = 0.0, .blue = 0.0});
/* 2: draw the client.background, but only for the parts around the window_rect */ /* 2: draw the client.background, but only for the parts around the window_rect */
if (con->window != NULL) { if (con->window != NULL) {
/* top area */ /* top area */