summaryrefslogtreecommitdiffstats
path: root/Source/WebCore/platform/graphics/android/fonts/FontAndroid.cpp
diff options
context:
space:
mode:
authorVictoria Lease <violets@google.com>2012-04-26 11:20:43 -0700
committerVictoria Lease <violets@google.com>2012-04-30 11:30:06 -0700
commit295b2f43db4ed680f52b29d3af0424a5d8c55c83 (patch)
tree6dff072da257fd80aeff67b372701b53be62e3ae /Source/WebCore/platform/graphics/android/fonts/FontAndroid.cpp
parentb5ce3d2b8190969ba36e8c0635c531e71d92e538 (diff)
downloadexternal_webkit-295b2f43db4ed680f52b29d3af0424a5d8c55c83.zip
external_webkit-295b2f43db4ed680f52b29d3af0424a5d8c55c83.tar.gz
external_webkit-295b2f43db4ed680f52b29d3af0424a5d8c55c83.tar.bz2
Replace Lohit Devanagari/Tamil fonts with Droid versions.
WebView's fallback lists previously provided only regular weight for Tamil, so I adapted Hebrew's separate Regular/Bold logic there. Also of note is that while the rest of the system uses the UI Tamil fonts, WebView substitutes the non-UI version. The Devanagari font needs to fit on all devices, so we only supply a single font there. Bug: 6318791 Change-Id: Iba0d98e5869b8fa00c1431cccee85e6e1943d2f8
Diffstat (limited to 'Source/WebCore/platform/graphics/android/fonts/FontAndroid.cpp')
-rw-r--r--Source/WebCore/platform/graphics/android/fonts/FontAndroid.cpp20
1 files changed, 16 insertions, 4 deletions
diff --git a/Source/WebCore/platform/graphics/android/fonts/FontAndroid.cpp b/Source/WebCore/platform/graphics/android/fonts/FontAndroid.cpp
index 3146612..827a531 100644
--- a/Source/WebCore/platform/graphics/android/fonts/FontAndroid.cpp
+++ b/Source/WebCore/platform/graphics/android/fonts/FontAndroid.cpp
@@ -463,6 +463,7 @@ private:
HebrewBold,
Naskh,
Tamil,
+ TamilBold,
Thai,
NUM_SCRIPTS
};
@@ -517,11 +518,12 @@ private:
// Indexed using enum CustomScript
const char* TextRunWalker::paths[] = {
"/system/fonts/Lohit-Bengali.ttf",
- "/system/fonts/Lohit-Devanagari.ttf",
+ "/system/fonts/DroidSansDevanagari-Regular.ttf",
"/system/fonts/DroidSansHebrew-Regular.ttf",
"/system/fonts/DroidSansHebrew-Bold.ttf",
"/system/fonts/DroidNaskh-Regular.ttf",
- "/system/fonts/Lohit-Tamil.ttf",
+ "/system/fonts/DroidSansTamil-Regular.ttf",
+ "/system/fonts/DroidSansTamil-Bold.ttf",
"/system/fonts/DroidSansThai.ttf"
};
@@ -713,7 +715,7 @@ void TextRunWalker::setupFontForScriptRun()
complexPlatformData = setupComplexFont(Bengali, platformData);
break;
case HB_Script_Devanagari:
- complexPlatformData = setupComplexFont(Devanagari, platformData);
+ complexPlatformData = setupComplexFont(Devanagari, platformData);
break;
case HB_Script_Hebrew:
switch (platformData.typeface()->style()) {
@@ -732,7 +734,17 @@ void TextRunWalker::setupFontForScriptRun()
complexPlatformData = setupComplexFont(Naskh, platformData);
break;
case HB_Script_Tamil:
- complexPlatformData = setupComplexFont(Tamil, platformData);
+ switch (platformData.typeface()->style()) {
+ case SkTypeface::kBold:
+ case SkTypeface::kBoldItalic:
+ complexPlatformData = setupComplexFont(TamilBold, platformData);
+ break;
+ case SkTypeface::kNormal:
+ case SkTypeface::kItalic:
+ default:
+ complexPlatformData = setupComplexFont(Tamil, platformData);
+ break;
+ }
break;
case HB_Script_Thai:
complexPlatformData = setupComplexFont(Thai, platformData);