diff options
| author | Jan Djärv | 2009-11-17 13:47:29 +0000 |
|---|---|---|
| committer | Jan Djärv | 2009-11-17 13:47:29 +0000 |
| commit | 21050de1b8b5246823b9cdb652fdf25105b48616 (patch) | |
| tree | 7aed348134979808ca7746c1e791e919cf00f2e0 /src | |
| parent | e268e987dccd39b3ae6aa61a558e9d5b8349b8d7 (diff) | |
| download | emacs-21050de1b8b5246823b9cdb652fdf25105b48616.tar.gz emacs-21050de1b8b5246823b9cdb652fdf25105b48616.zip | |
* xftfont.c (xftfont_fix_match): Older versions of fontconfig does
not have FC_LCD_*. #define them if not there.
Diffstat (limited to 'src')
| -rw-r--r-- | src/ChangeLog | 2 | ||||
| -rw-r--r-- | src/xftfont.c | 5 | ||||
| -rw-r--r-- | src/xsettings.c | 19 |
3 files changed, 15 insertions, 11 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index 3bac10b58ba..0716a577cbe 100644 --- a/src/ChangeLog +++ b/src/ChangeLog | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | 2009-11-17 Jan Djärv <jan.h.d@swipnet.se> | 1 | 2009-11-17 Jan Djärv <jan.h.d@swipnet.se> |
| 2 | 2 | ||
| 3 | * xftfont.c (xftfont_fix_match): Older versions of fontconfig does | 3 | * xftfont.c (xftfont_fix_match): Older versions of fontconfig does |
| 4 | not have FC_LCD_FILTER. #ifdef it. | 4 | not have FC_LCD_*. #define them if not there. |
| 5 | 5 | ||
| 6 | * xsettings.c (parse_xft_settings, apply_xft_settings): Ditto | 6 | * xsettings.c (parse_xft_settings, apply_xft_settings): Ditto |
| 7 | 7 | ||
diff --git a/src/xftfont.c b/src/xftfont.c index 130bd84c69b..d5ea4aa2ac3 100644 --- a/src/xftfont.c +++ b/src/xftfont.c | |||
| @@ -214,14 +214,15 @@ xftfont_fix_match (pat, match) | |||
| 214 | FcPatternDel (match, FC_HINT_STYLE); | 214 | FcPatternDel (match, FC_HINT_STYLE); |
| 215 | FcPatternAddInteger (match, FC_HINT_STYLE, i); | 215 | FcPatternAddInteger (match, FC_HINT_STYLE, i); |
| 216 | } | 216 | } |
| 217 | #ifdef FC_LCD_FILTER | 217 | #ifndef FC_LCD_FILTER |
| 218 | /* Older fontconfig versions don't have FC_LCD_FILTER. */ | 218 | /* Older fontconfig versions don't have FC_LCD_FILTER. */ |
| 219 | #define FC_LCD_FILTER "lcdfilter" | ||
| 220 | #endif | ||
| 219 | if (FcResultMatch == FcPatternGetInteger (pat, FC_LCD_FILTER, 0, &i)) | 221 | if (FcResultMatch == FcPatternGetInteger (pat, FC_LCD_FILTER, 0, &i)) |
| 220 | { | 222 | { |
| 221 | FcPatternDel (match, FC_LCD_FILTER); | 223 | FcPatternDel (match, FC_LCD_FILTER); |
| 222 | FcPatternAddInteger (match, FC_LCD_FILTER, i); | 224 | FcPatternAddInteger (match, FC_LCD_FILTER, i); |
| 223 | } | 225 | } |
| 224 | #endif | ||
| 225 | if (FcResultMatch == FcPatternGetInteger (pat, FC_RGBA, 0, &i)) | 226 | if (FcResultMatch == FcPatternGetInteger (pat, FC_RGBA, 0, &i)) |
| 226 | { | 227 | { |
| 227 | FcPatternDel (match, FC_RGBA); | 228 | FcPatternDel (match, FC_RGBA); |
diff --git a/src/xsettings.c b/src/xsettings.c index f84dd6cb7ca..99ddd004718 100644 --- a/src/xsettings.c +++ b/src/xsettings.c | |||
| @@ -105,6 +105,17 @@ something_changedCB (client, cnxn_id, entry, user_data) | |||
| 105 | 105 | ||
| 106 | #ifdef HAVE_XFT | 106 | #ifdef HAVE_XFT |
| 107 | 107 | ||
| 108 | /* Older fontconfig versions don't have FC_LCD_*. */ | ||
| 109 | #ifndef FC_LCD_NONE | ||
| 110 | #define FC_LCD_NONE 0 | ||
| 111 | #endif | ||
| 112 | #ifndef FC_LCD_DEFAULT | ||
| 113 | #define FC_LCD_DEFAULT 1 | ||
| 114 | #endif | ||
| 115 | #ifndef FC_LCD_FILTER | ||
| 116 | #define FC_LCD_FILTER "lcdfilter" | ||
| 117 | #endif | ||
| 118 | |||
| 108 | /* Find the window that contains the XSETTINGS property values. */ | 119 | /* Find the window that contains the XSETTINGS property values. */ |
| 109 | 120 | ||
| 110 | static void | 121 | static void |
| @@ -310,8 +321,6 @@ parse_xft_settings (prop, bytes, settings) | |||
| 310 | } | 321 | } |
| 311 | else if (strcmp (name, "Xft/DPI") == 0) | 322 | else if (strcmp (name, "Xft/DPI") == 0) |
| 312 | settings->dpi = (double)ival/1024.0; | 323 | settings->dpi = (double)ival/1024.0; |
| 313 | #ifdef FC_LCD_FILTER | ||
| 314 | /* Older fontconfig versions don't have FC_LCD_FILTER. */ | ||
| 315 | else if (strcmp (name, "Xft/lcdfilter") == 0) | 324 | else if (strcmp (name, "Xft/lcdfilter") == 0) |
| 316 | { | 325 | { |
| 317 | if (strcmp (sval, "none") == 0) | 326 | if (strcmp (sval, "none") == 0) |
| @@ -319,7 +328,6 @@ parse_xft_settings (prop, bytes, settings) | |||
| 319 | else if (strcmp (sval, "lcddefault") == 0) | 328 | else if (strcmp (sval, "lcddefault") == 0) |
| 320 | settings->lcdfilter = FC_LCD_DEFAULT; | 329 | settings->lcdfilter = FC_LCD_DEFAULT; |
| 321 | } | 330 | } |
| 322 | #endif | ||
| 323 | } | 331 | } |
| 324 | } | 332 | } |
| 325 | 333 | ||
| @@ -379,10 +387,7 @@ apply_xft_settings (dpyinfo, send_event_p) | |||
| 379 | FcPatternGetBool (pat, FC_ANTIALIAS, 0, &oldsettings.aa); | 387 | FcPatternGetBool (pat, FC_ANTIALIAS, 0, &oldsettings.aa); |
| 380 | FcPatternGetBool (pat, FC_HINTING, 0, &oldsettings.hinting); | 388 | FcPatternGetBool (pat, FC_HINTING, 0, &oldsettings.hinting); |
| 381 | FcPatternGetInteger (pat, FC_HINT_STYLE, 0, &oldsettings.hintstyle); | 389 | FcPatternGetInteger (pat, FC_HINT_STYLE, 0, &oldsettings.hintstyle); |
| 382 | #ifdef FC_LCD_FILTER | ||
| 383 | /* Older fontconfig versions don't have FC_LCD_FILTER. */ | ||
| 384 | FcPatternGetInteger (pat, FC_LCD_FILTER, 0, &oldsettings.lcdfilter); | 390 | FcPatternGetInteger (pat, FC_LCD_FILTER, 0, &oldsettings.lcdfilter); |
| 385 | #endif | ||
| 386 | FcPatternGetInteger (pat, FC_RGBA, 0, &oldsettings.rgba); | 391 | FcPatternGetInteger (pat, FC_RGBA, 0, &oldsettings.rgba); |
| 387 | FcPatternGetDouble (pat, FC_DPI, 0, &oldsettings.dpi); | 392 | FcPatternGetDouble (pat, FC_DPI, 0, &oldsettings.dpi); |
| 388 | 393 | ||
| @@ -404,7 +409,6 @@ apply_xft_settings (dpyinfo, send_event_p) | |||
| 404 | FcPatternAddInteger (pat, FC_RGBA, settings.rgba); | 409 | FcPatternAddInteger (pat, FC_RGBA, settings.rgba); |
| 405 | ++changed; | 410 | ++changed; |
| 406 | } | 411 | } |
| 407 | #ifdef FC_LCD_FILTER | ||
| 408 | /* Older fontconfig versions don't have FC_LCD_FILTER. */ | 412 | /* Older fontconfig versions don't have FC_LCD_FILTER. */ |
| 409 | if (oldsettings.lcdfilter != settings.lcdfilter) | 413 | if (oldsettings.lcdfilter != settings.lcdfilter) |
| 410 | { | 414 | { |
| @@ -412,7 +416,6 @@ apply_xft_settings (dpyinfo, send_event_p) | |||
| 412 | FcPatternAddInteger (pat, FC_LCD_FILTER, settings.lcdfilter); | 416 | FcPatternAddInteger (pat, FC_LCD_FILTER, settings.lcdfilter); |
| 413 | ++changed; | 417 | ++changed; |
| 414 | } | 418 | } |
| 415 | #endif | ||
| 416 | if (oldsettings.hintstyle != settings.hintstyle) | 419 | if (oldsettings.hintstyle != settings.hintstyle) |
| 417 | { | 420 | { |
| 418 | FcPatternDel (pat, FC_HINT_STYLE); | 421 | FcPatternDel (pat, FC_HINT_STYLE); |