From f5935a9836d1a49693bd59f7fce5c475291c8dae Mon Sep 17 00:00:00 2001 From: Mark Wagner Date: Tue, 22 Sep 2009 13:49:26 -0700 Subject: [PATCH] Don't show the badge background when we have no uri, email, or phone. This will be used in talk and mms in the case of multiple recipients. --- .../android/widget/FasttrackBadgeWidget.java | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/core/java/android/widget/FasttrackBadgeWidget.java b/core/java/android/widget/FasttrackBadgeWidget.java index 9d2307fa5ff3d..8c8e054c4577d 100644 --- a/core/java/android/widget/FasttrackBadgeWidget.java +++ b/core/java/android/widget/FasttrackBadgeWidget.java @@ -22,6 +22,7 @@ import android.content.Context; import android.content.Intent; import android.content.res.TypedArray; import android.database.Cursor; +import android.graphics.drawable.Drawable; import android.net.Uri; import android.provider.ContactsContract.Contacts; import android.provider.ContactsContract.FastTrack; @@ -46,6 +47,7 @@ public class FasttrackBadgeWidget extends ImageView implements OnClickListener { private String mContactPhone; private int mMode; private QueryHandler mQueryHandler; + private Drawable mBadgeBackground; protected String[] mExcludeMimes = null; @@ -91,6 +93,8 @@ public class FasttrackBadgeWidget extends ImageView implements OnClickListener { a.recycle(); init(); + + mBadgeBackground = getBackground(); } private void init() { @@ -108,6 +112,17 @@ public class FasttrackBadgeWidget extends ImageView implements OnClickListener { */ public void assignContactUri(Uri contactUri) { mContactUri = contactUri; + mContactEmail = null; + mContactPhone = null; + onContactUriChanged(); + } + + private void onContactUriChanged() { + if (mContactUri == null && mContactEmail == null && mContactPhone == null) { + setBackgroundDrawable(null); + } else { + setBackgroundDrawable(mBadgeBackground); + } } /** @@ -127,6 +142,7 @@ public class FasttrackBadgeWidget extends ImageView implements OnClickListener { EMAIL_LOOKUP_PROJECTION, null, null, null); } else { mContactUri = null; + onContactUriChanged(); } } @@ -147,6 +163,7 @@ public class FasttrackBadgeWidget extends ImageView implements OnClickListener { PHONE_LOOKUP_PROJECTION, null, null, null); } else { mContactUri = null; + onContactUriChanged(); } } @@ -237,6 +254,7 @@ public class FasttrackBadgeWidget extends ImageView implements OnClickListener { } mContactUri = lookupUri; + onContactUriChanged(); if (trigger && lookupUri != null) { // Found contact, so trigger track