core: fix background not blurred under transparent windows

When a window has 0 opacity, it's rendering is skipped completely. Thus
its background isn't blurred.

This commit fixes that.

Signed-off-by: Yuxuan Shui <yshuiv7@gmail.com>
This commit is contained in:
Yuxuan Shui
2019-08-04 23:15:10 +01:00
parent 78f002d154
commit 4dc5a04735
2 changed files with 6 additions and 2 deletions

View File

@ -252,7 +252,10 @@ void paint_all_new(session_t *ps, struct managed_win *t, bool ignore_damage) {
ps->backend_data->ops->compose(ps->backend_data, w->win_image,
w->g.x, w->g.y,
&reg_paint_in_bound, &reg_visible);
} else {
} else if (w->opacity * MAX_ALPHA >= 1){
// We don't need to paint the window body itself if it's
// completely transparent.
// For window image processing, we don't need to limit the process
// region to damage, since the window image data is independent
// from the target image data, which we want to protect.