comparison src/frame-x.c @ 5237:6466bc9ebf15

* console-x-impl.h (DEVICE_X_XFTDRAW): Define, instead of FRAME_X_FTDRAW. (struct x_device): Add XftDraw field. (struct x_frame): Remove XftDraw field. Move XftDraw from frame to device for improved caching. * device-x.c (x_delete_device): Free XftDraw here. * frame-x.c (x_delete_frame): Remove freeing of XftDraw. * redisplay-xlike-inc.c (XLIKE_output_string): Use DEVICE_X_XFTDRAW instead of FRAME_X_XFTDRAW when lazily creating XftDraw structure.
author Jeff Sparkes <jsparkes@gmail.com>
date Wed, 23 Jun 2010 08:04:18 -0400
parents 97eb4942aec8
children f19e6bc25969
comparison
equal deleted inserted replaced
5236:0f7d483cff5a 5237:6466bc9ebf15
2611 #endif /* HAVE_WMCOMMAND */ 2611 #endif /* HAVE_WMCOMMAND */
2612 2612
2613 #ifdef HAVE_CDE 2613 #ifdef HAVE_CDE
2614 DtDndDropUnregister (FRAME_X_TEXT_WIDGET (f)); 2614 DtDndDropUnregister (FRAME_X_TEXT_WIDGET (f));
2615 #endif /* HAVE_CDE */ 2615 #endif /* HAVE_CDE */
2616
2617 #ifdef HAVE_XFT
2618 /* If we have an XftDraw structure, we need to free it here.
2619 We can't ever have an XftDraw without a Display, so we are safe
2620 to free it in here, and we avoid too much playing around with the
2621 malloc checking hooks this way. */
2622 if (FRAME_X_XFTDRAW (f))
2623 {
2624 XftDrawDestroy (FRAME_X_XFTDRAW (f));
2625 FRAME_X_XFTDRAW (f) = NULL;
2626 }
2627 #endif
2628
2629 2616
2630 assert (FRAME_X_SHELL_WIDGET (f) != 0); 2617 assert (FRAME_X_SHELL_WIDGET (f) != 0);
2631 dpy = XtDisplay (FRAME_X_SHELL_WIDGET (f)); 2618 dpy = XtDisplay (FRAME_X_SHELL_WIDGET (f));
2632 2619
2633 #ifdef EXTERNAL_WIDGET 2620 #ifdef EXTERNAL_WIDGET