diff options
Diffstat (limited to 'Source/WebKit/chromium/src/gtk/WebFontInfo.cpp')
-rw-r--r-- | Source/WebKit/chromium/src/gtk/WebFontInfo.cpp | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/Source/WebKit/chromium/src/gtk/WebFontInfo.cpp b/Source/WebKit/chromium/src/gtk/WebFontInfo.cpp index dd25eb1..94b75de 100644 --- a/Source/WebKit/chromium/src/gtk/WebFontInfo.cpp +++ b/Source/WebKit/chromium/src/gtk/WebFontInfo.cpp @@ -38,7 +38,7 @@ namespace WebKit { -WebCString WebFontInfo::familyForChars(const WebUChar* characters, size_t numCharacters) +WebCString WebFontInfo::familyForChars(const WebUChar* characters, size_t numCharacters, const char* preferredLocale) { FcCharSet* cset = FcCharSetCreate(); for (size_t i = 0; i < numCharacters; ++i) { @@ -62,6 +62,13 @@ WebCString WebFontInfo::familyForChars(const WebUChar* characters, size_t numCha fcvalue.u.b = FcTrue; FcPatternAdd(pattern, FC_SCALABLE, fcvalue, FcFalse); + if (preferredLocale) { + FcLangSet* langset = FcLangSetCreate(); + FcLangSetAdd(langset, reinterpret_cast<const FcChar8 *>(preferredLocale)); + FcPatternAddLangSet(pattern, FC_LANG, langset); + FcLangSetDestroy(langset); + } + FcConfigSubstitute(0, pattern, FcMatchPattern); FcDefaultSubstitute(pattern); |