summaryrefslogtreecommitdiffstats
path: root/tools/layoutlib/bridge/src/android/graphics/FontFamily_Delegate.java
diff options
context:
space:
mode:
authorDeepanshu Gupta <deepanshu@google.com>2014-08-04 13:57:56 -0700
committerDeepanshu Gupta <deepanshu@google.com>2014-08-05 14:19:27 -0700
commitb0d767dcf17dd393646b8fc3e8c9f46dfe12e230 (patch)
treefef1dfd5db3b5046788acd2e97705e88292d90e5 /tools/layoutlib/bridge/src/android/graphics/FontFamily_Delegate.java
parent0c5cd96522bae516a43d79d9014e93bca4727785 (diff)
downloadframeworks_base-b0d767dcf17dd393646b8fc3e8c9f46dfe12e230.zip
frameworks_base-b0d767dcf17dd393646b8fc3e8c9f46dfe12e230.tar.gz
frameworks_base-b0d767dcf17dd393646b8fc3e8c9f46dfe12e230.tar.bz2
Skip loading otf fonts on Java 6
Change-Id: I9668b84812e9be333d10603657dd911024fc292d
Diffstat (limited to 'tools/layoutlib/bridge/src/android/graphics/FontFamily_Delegate.java')
-rw-r--r--tools/layoutlib/bridge/src/android/graphics/FontFamily_Delegate.java13
1 files changed, 10 insertions, 3 deletions
diff --git a/tools/layoutlib/bridge/src/android/graphics/FontFamily_Delegate.java b/tools/layoutlib/bridge/src/android/graphics/FontFamily_Delegate.java
index 30b0ce5..de3307f 100644
--- a/tools/layoutlib/bridge/src/android/graphics/FontFamily_Delegate.java
+++ b/tools/layoutlib/bridge/src/android/graphics/FontFamily_Delegate.java
@@ -24,6 +24,7 @@ import com.android.tools.layoutlib.annotations.LayoutlibDelegate;
import android.content.res.AssetManager;
import java.awt.Font;
+import java.awt.FontFormatException;
import java.io.File;
import java.util.ArrayList;
import java.util.List;
@@ -152,14 +153,20 @@ public class FontFamily_Delegate {
try {
return Font.createFont(Font.TRUETYPE_FONT, f);
} catch (Exception e) {
+ if (path.endsWith(".otf") && e instanceof FontFormatException) {
+ // If we aren't able to load an Open Type font, don't log a warning just yet.
+ // We wait for a case where font is being used. Only then we try to log the
+ // warning.
+ return null;
+ }
Bridge.getLog().fidelityWarning(LayoutLog.TAG_BROKEN,
String.format("Unable to load font %1$s", relativePath),
- e /*throwable*/, null /*data*/);
+ e, null);
}
} else {
Bridge.getLog().fidelityWarning(LayoutLog.TAG_UNSUPPORTED,
"Only platform fonts located in " + SYSTEM_FONTS + "can be loaded.",
- null /*throwable*/, null /*data*/);
+ null, null);
}
return null;
@@ -206,7 +213,7 @@ public class FontFamily_Delegate {
@LayoutlibDelegate
/*package*/ static boolean nAddFontFromAsset(long nativeFamily, AssetManager mgr, String path) {
Bridge.getLog().fidelityWarning(LayoutLog.TAG_UNSUPPORTED,
- "FontFamily.addFontFromAsset is not supported.", null /*throwable*/, null /*data*/);
+ "FontFamily.addFontFromAsset is not supported.", null, null);
return false;
}