Do not create container pixmap without a border
Patch status: needinfo
Patch by Tony Crisci
Long description:
A pixmap without a border is not necessary because nothing meaningful will be drawn to it. It could possibly obscure areas meant to be transparent by the client. fixes #1013
To apply this patch, use:
curl http://cr.i3wm.org/patch/374/raw.patch | git am
b/src/x.c
18 |
@@ -667,9 +667,10 @@ void x_push_node(Con *con) { |
19 |
/* As the pixmap only depends on the size and not on the position, it |
20 |
* is enough to check if width/height have changed. Also, we don’t |
21 |
* create a pixmap at all when the window is actually not visible |
22 |
- * (height == 0). */ |
23 |
- if ((state->rect.width != rect.width || |
24 |
- state->rect.height != rect.height)) { |
25 |
+ * (height == 0) or when it is not needed (border_style == BS_NONE). */ |
26 |
+ if (con->border_style != BS_NONE && |
27 |
+ (state->rect.width != rect.width || |
28 |
+ state->rect.height != rect.height)) { |
29 |
if (con->pixmap == 0) { |
30 |
con->pixmap = xcb_generate_id(conn); |
31 |
con->pm_gc = xcb_generate_id(conn); |