]> Dogcows Code - chaz/openbox/commitdiff
increase the reported font size when it has a shadow
authorDana Jansens <danakj@orodu.net>
Sat, 7 Sep 2002 07:18:31 +0000 (07:18 +0000)
committerDana Jansens <danakj@orodu.net>
Sat, 7 Sep 2002 07:18:31 +0000 (07:18 +0000)
src/Font.cc

index 37dfef2f878f8e94bf1047bd48bce5f52479baf0..ae835e7607ae2cabf18d5146114a84278a911a0e 100644 (file)
@@ -262,7 +262,7 @@ void BFont::drawString(Drawable d, int x, int y, const BColor &color,
                                   _screen->getColormap());
     assert(draw);
 
-/*    if (_shadow) {
+    if (_shadow) {
       XftColor c;
       c.color.red = 0;
       c.color.green = 0;
@@ -274,21 +274,14 @@ void BFont::drawString(Drawable d, int x, int y, const BColor &color,
       XftDrawStringUtf8(draw, &c, _xftfont, x + 1, _xftfont->ascent + y + 1,
                         (XftChar8 *) string.c_str(), string.size());
     }
-*/
-
+    
     XftColor c;
     c.color.red = color.red() | color.red() << 8;
     c.color.green = color.green() | color.green() << 8;
     c.color.blue = color.blue() | color.blue() << 8;
     c.pixel = color.pixel();
-
-    if (_shadow) {
-      c.color.alpha = 0x66 | 0x66 << 8; // transparent shadow
-      XftDrawStringUtf8(draw, &c, _xftfont, x + 1, _xftfont->ascent + y + 1,
-                        (XftChar8 *) string.c_str(), string.size());
-    }
-    
     c.color.alpha = 0xff | 0xff << 8; // no transparency in BColor yet
+
     XftDrawStringUtf8(draw, &c, _xftfont, x, _xftfont->ascent + y,
                       (XftChar8 *) string.c_str(), string.size());
 
@@ -318,7 +311,7 @@ unsigned int BFont::measureString(const string &string) const {
     XGlyphInfo info;
     XftTextExtentsUtf8(_display, _xftfont, (XftChar8 *) string.c_str(),
                        string.size(), &info);
-    return info.xOff;
+    return info.xOff + (_shadow ? 1 : 0);
   }
 #endif // XFT
 
@@ -337,7 +330,7 @@ unsigned int BFont::height(void) const {
 
 #ifdef    XFT
   if (_xftfont)
-    return _xftfont->height;
+    return _xftfont->height + (_shadow ? 1 : 0);
 #endif // XFT
 
   if (i18n.multibyte())
This page took 0.022661 seconds and 4 git commands to generate.