x: use PolySegment instead of two PolyLine requests

This commit is contained in:
Michael Stapelberg 2011-07-10 21:19:31 +02:00
parent 8f4b95dccd
commit d7f9700ba4
1 changed files with 11 additions and 11 deletions

22
src/x.c
View File

@ -377,17 +377,17 @@ void x_draw_decoration(Con *con) {
xcb_rectangle_t drect = { con->deco_rect.x, con->deco_rect.y, con->deco_rect.width, con->deco_rect.height }; xcb_rectangle_t drect = { con->deco_rect.x, con->deco_rect.y, con->deco_rect.width, con->deco_rect.height };
xcb_poly_fill_rectangle(conn, parent->pixmap, parent->pm_gc, 1, &drect); xcb_poly_fill_rectangle(conn, parent->pixmap, parent->pm_gc, 1, &drect);
/* 5: draw the two lines in border color */ /* 5: draw two unconnected lines in border color */
xcb_draw_line(conn, parent->pixmap, parent->pm_gc, p->color->border, xcb_change_gc_single(conn, parent->pm_gc, XCB_GC_FOREGROUND, p->color->border);
con->deco_rect.x, /* x */ Rect *dr = &(con->deco_rect);
con->deco_rect.y, /* y */ xcb_segment_t segments[] = {
con->deco_rect.x + con->deco_rect.width, /* to_x */ { dr->x, dr->y,
con->deco_rect.y); /* to_y */ dr->x + dr->width, dr->y },
xcb_draw_line(conn, parent->pixmap, parent->pm_gc, p->color->border,
con->deco_rect.x, /* x */ { dr->x, dr->y + dr->height - 1,
con->deco_rect.y + con->deco_rect.height - 1, /* y */ dr->x + dr->width, dr->y + dr->height - 1 }
con->deco_rect.x + con->deco_rect.width, /* to_x */ };
con->deco_rect.y + con->deco_rect.height - 1); /* to_y */ xcb_poly_segment(conn, parent->pixmap, parent->pm_gc, 2, segments);
/* 6: draw the title */ /* 6: draw the title */
uint32_t mask = XCB_GC_FOREGROUND | XCB_GC_BACKGROUND | XCB_GC_FONT; uint32_t mask = XCB_GC_FOREGROUND | XCB_GC_BACKGROUND | XCB_GC_FONT;