summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndroid (Google) Code Review <android-gerrit@google.com>2009-07-29 18:09:28 -0700
committerAndroid (Google) Code Review <android-gerrit@google.com>2009-07-29 18:09:28 -0700
commitc6eb5ac988518f41938c4f021003d6c202d84819 (patch)
tree34749a2168958d35e68d7ab9d92c8ee5b1b44623
parent9c71716e3de9b6a7e1830cae13da35ebdeeaaa80 (diff)
parent0cd6376fa14089cee42991f751962ffd7f455797 (diff)
downloadframeworks_base-c6eb5ac988518f41938c4f021003d6c202d84819.zip
frameworks_base-c6eb5ac988518f41938c4f021003d6c202d84819.tar.gz
frameworks_base-c6eb5ac988518f41938c4f021003d6c202d84819.tar.bz2
Merge change 9071 into donut
* changes: Fix issue #2018454: NullPointerException in ImageSpan constructor
-rw-r--r--api/current.xml26
-rw-r--r--core/java/android/text/style/ImageSpan.java23
2 files changed, 46 insertions, 3 deletions
diff --git a/api/current.xml b/api/current.xml
index e0ea966..4df50bc 100644
--- a/api/current.xml
+++ b/api/current.xml
@@ -130442,9 +130442,33 @@
type="android.text.style.ImageSpan"
static="false"
final="false"
+ deprecated="deprecated"
+ visibility="public"
+>
+<parameter name="b" type="android.graphics.Bitmap">
+</parameter>
+</constructor>
+<constructor name="ImageSpan"
+ type="android.text.style.ImageSpan"
+ static="false"
+ final="false"
+ deprecated="deprecated"
+ visibility="public"
+>
+<parameter name="b" type="android.graphics.Bitmap">
+</parameter>
+<parameter name="verticalAlignment" type="int">
+</parameter>
+</constructor>
+<constructor name="ImageSpan"
+ type="android.text.style.ImageSpan"
+ static="false"
+ final="false"
deprecated="not deprecated"
visibility="public"
>
+<parameter name="context" type="android.content.Context">
+</parameter>
<parameter name="b" type="android.graphics.Bitmap">
</parameter>
</constructor>
@@ -130455,6 +130479,8 @@
deprecated="not deprecated"
visibility="public"
>
+<parameter name="context" type="android.content.Context">
+</parameter>
<parameter name="b" type="android.graphics.Bitmap">
</parameter>
<parameter name="verticalAlignment" type="int">
diff --git a/core/java/android/text/style/ImageSpan.java b/core/java/android/text/style/ImageSpan.java
index 911a23c..86ef5f6 100644
--- a/core/java/android/text/style/ImageSpan.java
+++ b/core/java/android/text/style/ImageSpan.java
@@ -33,17 +33,34 @@ public class ImageSpan extends DynamicDrawableSpan {
private Context mContext;
private String mSource;
+ /**
+ * @deprecated Use {@link #ImageSpan(Context, Bitmap)} instead.
+ */
public ImageSpan(Bitmap b) {
- this(b, ALIGN_BOTTOM);
+ this(null, b, ALIGN_BOTTOM);
+ }
+
+ /**
+ * @deprecated Use {@link #ImageSpan(Context, Bitmap, int) instead.
+ */
+ public ImageSpan(Bitmap b, int verticalAlignment) {
+ this(null, b, verticalAlignment);
+ }
+
+ public ImageSpan(Context context, Bitmap b) {
+ this(context, b, ALIGN_BOTTOM);
}
/**
* @param verticalAlignment one of {@link DynamicDrawableSpan#ALIGN_BOTTOM} or
* {@link DynamicDrawableSpan#ALIGN_BASELINE}.
*/
- public ImageSpan(Bitmap b, int verticalAlignment) {
+ public ImageSpan(Context context, Bitmap b, int verticalAlignment) {
super(verticalAlignment);
- mDrawable = new BitmapDrawable(mContext.getResources(), b);
+ mContext = context;
+ mDrawable = context != null
+ ? new BitmapDrawable(context.getResources(), b)
+ : new BitmapDrawable(b);
int width = mDrawable.getIntrinsicWidth();
int height = mDrawable.getIntrinsicHeight();
mDrawable.setBounds(0, 0, width > 0 ? width : 0, height > 0 ? height : 0);