Implement the layoutlib Bitmap through a native delegate.

This does not implement all the native methods of the
android.graphics.Bitmap class, only what's needed to draw an
ImageView object. The rest will be implemented after Canvas and
Paint have been moved to the native delegate.

Change-Id: Ia0c3b2cafa03871c298deaef5817a25ac1c35521
diff --git a/bridge/src/android/graphics/Typeface_Delegate.java b/bridge/src/android/graphics/Typeface_Delegate.java
index 309d934..248bdab 100644
--- a/bridge/src/android/graphics/Typeface_Delegate.java
+++ b/bridge/src/android/graphics/Typeface_Delegate.java
@@ -34,7 +34,7 @@
  *
  * This class behaves like the original native implementation, but in Java, keeping previously
  * native data into its own objects and mapping them to int that are sent back and forth between
- * it and the original Matrix class.
+ * it and the original Typeface class.
  *
  * @see DelegateManager
  *
@@ -84,7 +84,7 @@
 
     // ---- native methods ----
 
-    public static synchronized int nativeCreate(String familyName, int style) {
+    /*package*/ static synchronized int nativeCreate(String familyName, int style) {
         if (familyName == null) {
             familyName = DEFAULT_FAMILY;
         }
@@ -102,7 +102,7 @@
         return sManager.addDelegate(newDelegate);
     }
 
-    public static synchronized int nativeCreateFromTypeface(int native_instance, int style) {
+    /*package*/ static synchronized int nativeCreateFromTypeface(int native_instance, int style) {
         Typeface_Delegate delegate = sManager.getDelegate(native_instance);
         if (delegate == null) {
             assert false;
@@ -122,21 +122,21 @@
         return sManager.addDelegate(newDelegate);
     }
 
-    public static synchronized int nativeCreateFromAsset(AssetManager mgr, String path) {
+    /*package*/ static synchronized int nativeCreateFromAsset(AssetManager mgr, String path) {
         // FIXME
-        throw new UnsupportedOperationException();
+        throw new UnsupportedOperationException("Native delegate needed: Typeface_Delegate.nativeCreateFromAsset");
     }
 
-    public static synchronized int nativeCreateFromFile(String path) {
+    /*package*/ static synchronized int nativeCreateFromFile(String path) {
         // FIXME
-        throw new UnsupportedOperationException();
+        throw new UnsupportedOperationException("Native delegate needed: Typeface_Delegate.nativeCreateFromFile");
     }
 
-    public static void nativeUnref(int native_instance) {
+    /*package*/ static void nativeUnref(int native_instance) {
         sManager.removeDelegate(native_instance);
     }
 
-    public static int nativeGetStyle(int native_instance) {
+    /*package*/ static int nativeGetStyle(int native_instance) {
         Typeface_Delegate delegate = sManager.getDelegate(native_instance);
         if (delegate == null) {
             assert false;
@@ -146,7 +146,7 @@
         return delegate.mStyle;
     }
 
-    public static void setGammaForText(float blackGamma, float whiteGamma) {
+    /*package*/ static void setGammaForText(float blackGamma, float whiteGamma) {
         // This is for device testing only: pass
     }