2012-03-02 17:42:18 +01:00
|
|
|
Index: xemacs-21.5.31/lwlib/xlwmenu.c
|
2009-06-17 15:52:36 +02:00
|
|
|
===================================================================
|
2012-03-02 17:42:18 +01:00
|
|
|
--- xemacs-21.5.31.orig/lwlib/xlwmenu.c
|
|
|
|
+++ xemacs-21.5.31/lwlib/xlwmenu.c
|
|
|
|
@@ -343,12 +343,12 @@ string_width (XlwMenuWidget mw,
|
2009-03-24 20:47:02 +01:00
|
|
|
#else
|
|
|
|
# ifdef USE_XFONTSET
|
|
|
|
XRectangle ri, rl;
|
|
|
|
- XmbTextExtents (mw->menu.font_set, s, strlen (s), &ri, &rl);
|
|
|
|
+ Xutf8TextExtents (mw->menu.font_set, s, strlen (s), &ri, &rl);
|
|
|
|
return rl.width;
|
|
|
|
# else
|
2012-03-02 17:42:18 +01:00
|
|
|
#ifdef HAVE_XFT_MENUBARS
|
2009-03-24 20:47:02 +01:00
|
|
|
XGlyphInfo glyphinfo;
|
|
|
|
- XftTextExtents8 (XtDisplay (mw), mw->menu.renderFont, (FcChar8 *) s,
|
|
|
|
+ XftTextExtentsUtf8 (XtDisplay (mw), mw->menu.renderFont, (FcChar8 *) s,
|
|
|
|
strlen (s), &glyphinfo);
|
|
|
|
return glyphinfo.xOff;
|
|
|
|
#else
|
2012-03-02 17:42:18 +01:00
|
|
|
@@ -435,11 +435,11 @@ string_width_u (XlwMenuWidget mw,
|
2009-03-24 20:47:02 +01:00
|
|
|
return width;
|
|
|
|
#else
|
|
|
|
# ifdef USE_XFONTSET
|
|
|
|
- XmbTextExtents (mw->menu.font_set, newchars, j, &ri, &rl);
|
|
|
|
+ Xutf8TextExtents (mw->menu.font_set, newchars, j, &ri, &rl);
|
|
|
|
return rl.width;
|
|
|
|
# else /* ! USE_XFONTSET */
|
2012-03-02 17:42:18 +01:00
|
|
|
#ifdef HAVE_XFT_MENUBARS
|
2009-03-24 20:47:02 +01:00
|
|
|
- XftTextExtents8 (XtDisplay (mw), mw->menu.renderFont, (FcChar8 *) newchars,
|
|
|
|
+ XftTextExtentsUtf8 (XtDisplay (mw), mw->menu.renderFont, (FcChar8 *) newchars,
|
|
|
|
j, &glyphinfo);
|
|
|
|
return glyphinfo.xOff;
|
|
|
|
#else
|
2012-03-02 17:42:18 +01:00
|
|
|
@@ -769,7 +769,7 @@ x_xft_text_width (Display *dpy, XftFont
|
2009-03-24 20:47:02 +01:00
|
|
|
{
|
|
|
|
static XGlyphInfo glyphinfo;
|
|
|
|
|
|
|
|
- XftTextExtents8 (dpy,
|
|
|
|
+ XftTextExtentsUtf8 (dpy,
|
|
|
|
xft_font,
|
|
|
|
(FcChar8 *) run, len, &glyphinfo);
|
|
|
|
return glyphinfo.xOff;
|
2012-03-02 17:42:18 +01:00
|
|
|
@@ -816,12 +816,12 @@ string_draw (XlwMenuWidget mw,
|
2009-03-24 20:47:02 +01:00
|
|
|
x_xft_text_width (display, renderFont, string, strlen (string)),
|
|
|
|
renderFont->ascent + renderFont->descent); /* XXX */
|
|
|
|
/* draw text */
|
|
|
|
- XftDrawString8 (xftDraw, color, renderFont, x, y + mw->menu.font_ascent,
|
|
|
|
+ XftDrawStringUtf8 (xftDraw, color, renderFont, x, y + mw->menu.font_ascent,
|
|
|
|
(FcChar8 *) string, strlen (string));
|
|
|
|
XftDrawDestroy (xftDraw);
|
|
|
|
# else
|
|
|
|
# ifdef USE_XFONTSET
|
|
|
|
- XmbDrawString (XtDisplay (mw), window, mw->menu.font_set, gc,
|
|
|
|
+ Xutf8DrawString (XtDisplay (mw), window, mw->menu.font_set, gc,
|
|
|
|
x, y + mw->menu.font_ascent, string, strlen (string));
|
|
|
|
# else
|
|
|
|
XDrawString (XtDisplay (mw), window, gc,
|
2012-03-02 17:42:18 +01:00
|
|
|
@@ -877,10 +877,10 @@ string_draw_range (
|
2009-03-24 20:47:02 +01:00
|
|
|
|
|
|
|
if (end <= start)
|
|
|
|
return 0;
|
|
|
|
- XmbDrawString (
|
|
|
|
+ Xutf8DrawString (
|
|
|
|
XtDisplay (mw), window, mw->menu.font_set, gc,
|
|
|
|
x, y + mw->menu.font_ascent, &string[start], end - start);
|
|
|
|
- XmbTextExtents (
|
|
|
|
+ Xutf8TextExtents (
|
|
|
|
mw->menu.font_set, &string[start], end - start, &ri, &rl);
|
|
|
|
return rl.width;
|
|
|
|
# else
|
2012-03-02 17:42:18 +01:00
|
|
|
@@ -903,12 +903,12 @@ string_draw_range (
|
2009-03-24 20:47:02 +01:00
|
|
|
renderFont, &string[start], end - start),
|
|
|
|
renderFont->ascent + renderFont->descent); /* XXX */
|
|
|
|
/* draw text */
|
|
|
|
- XftDrawString8 (xftDraw, color, renderFont,
|
|
|
|
+ XftDrawStringUtf8 (xftDraw, color, renderFont,
|
|
|
|
x, y + mw->menu.font_ascent,
|
|
|
|
(FcChar8 *) &string[start], end - start);
|
|
|
|
|
|
|
|
- XftTextExtents8 (display, renderFont, (FcChar8 *) &string[start],
|
|
|
|
- end - start, &glyphinfo);
|
|
|
|
+ XftTextExtentsUtf8 (display, renderFont, (FcChar8 *) &string[start],
|
|
|
|
+ end - start, &glyphinfo);
|
|
|
|
|
|
|
|
/* #### should use parent frame's .xftDraw */
|
|
|
|
XftDrawDestroy (xftDraw);
|