Fix rendering of 1-px-border windows which require background filling
This commit is contained in:
parent
f1ecf08df5
commit
316f62dfda
|
@ -753,8 +753,13 @@ int handle_expose_event(void *data, xcb_connection_t *conn, xcb_expose_event_t *
|
|||
|
||||
/* Draw a black background */
|
||||
xcb_change_gc_single(conn, client->titlegc, XCB_GC_FOREGROUND, get_colorpixel(conn, "#000000"));
|
||||
xcb_rectangle_t crect = {2, 0, client->rect.width - (2 + 2), client->rect.height - 2};
|
||||
xcb_poly_fill_rectangle(conn, client->frame, client->titlegc, 1, &crect);
|
||||
if (client->titlebar_position == TITLEBAR_OFF) {
|
||||
xcb_rectangle_t crect = {1, 0, client->rect.width - (1 + 1), client->rect.height - 1};
|
||||
xcb_poly_fill_rectangle(conn, client->frame, client->titlegc, 1, &crect);
|
||||
} else {
|
||||
xcb_rectangle_t crect = {2, 0, client->rect.width - (2 + 2), client->rect.height - 2};
|
||||
xcb_poly_fill_rectangle(conn, client->frame, client->titlegc, 1, &crect);
|
||||
}
|
||||
}
|
||||
xcb_flush(conn);
|
||||
return 1;
|
||||
|
|
11
src/layout.c
11
src/layout.c
|
@ -174,9 +174,14 @@ void decorate_window(xcb_connection_t *conn, Client *client, xcb_drawable_t draw
|
|||
/* Draw the inner background to have a black frame around clients (such as mplayer)
|
||||
which cannot be resized exactly in our frames and therefore are centered */
|
||||
xcb_change_gc_single(conn, client->titlegc, XCB_GC_FOREGROUND, get_colorpixel(conn, "#000000"));
|
||||
xcb_rectangle_t crect = {2, decoration_height,
|
||||
client->rect.width - (2 + 2), client->rect.height - 2 - decoration_height};
|
||||
xcb_poly_fill_rectangle(conn, client->frame, client->titlegc, 1, &crect);
|
||||
if (client->titlebar_position == TITLEBAR_OFF) {
|
||||
xcb_rectangle_t crect = {1, 1, client->rect.width - (1 + 1), client->rect.height - (1 + 1)};
|
||||
xcb_poly_fill_rectangle(conn, client->frame, client->titlegc, 1, &crect);
|
||||
} else {
|
||||
xcb_rectangle_t crect = {2, decoration_height,
|
||||
client->rect.width - (2 + 2), client->rect.height - 2 - decoration_height};
|
||||
xcb_poly_fill_rectangle(conn, client->frame, client->titlegc, 1, &crect);
|
||||
}
|
||||
}
|
||||
|
||||
if (client->titlebar_position != TITLEBAR_OFF) {
|
||||
|
|
Loading…
Reference in New Issue