all repos — openbox @ 8c8c40e270fa2e2ecc423e59191c99f5b97d8d75

openbox fork - make it a bit more like ryudo

try to render fonts
destroy pixmaps and xftdraws in appearance_delete
Derek Foreman manmower@gmail.com
commit

8c8c40e270fa2e2ecc423e59191c99f5b97d8d75

parent

4672adbfa0384fdb8c102271dad64ad0bf3fb8da

1 files changed, 11 insertions(+), 1 deletions(-)

jump to
M render/render.crender/render.c

@@ -80,7 +80,15 @@ if (l->surface.data.planar.grad == Background_Solid)

gradient_solid(l, w, h); else gradient_render(&l->surface, w, h); for (i = 0; i < l->textures; i++) { - printf("I AM DOING SOMETHING NOW\n"); + switch (l->texture[i].type) { + case Text: + if (l->xftdraw == NULL) { + l->xftdraw = XftDrawCreate(ob_display, l->pixmap, + render_visual, render_colormap); + } + font_draw(l->xftdraw, l->texture[i].data.text); + break; + } } //reduce depth if (l->surface.data.planar.grad != Background_Solid) {

@@ -178,6 +186,8 @@

void appearance_free(Appearance *a) { PlanarSurface *p; + if (a->pixmap != None) XFreePixmap(ob_display, a->pixmap); + if (a->xftdraw != NULL) XftDrawDestroy(a->xftdraw); if (a->textures) g_free(a->texture); if (a->surface.type == Surface_Planar) {