summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorbelgin <belginstirbu@hotmail.com>2020-11-24 01:47:05 +0200
committerDenis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>2020-12-02 01:39:00 +0100
commite02a2defcde9655ee43fef3e78d4156891fb302e (patch)
tree9fd9706965a354c4d30c1b3949db18d2f3867e2b
parent52a1efec746e806533c78a858fd25cf7aa93dcd8 (diff)
downloadpackages_apps_Messaging-e02a2defcde9655ee43fef3e78d4156891fb302e.tar.gz
packages_apps_Messaging-e02a2defcde9655ee43fef3e78d4156891fb302e.tar.bz2
packages_apps_Messaging-e02a2defcde9655ee43fef3e78d4156891fb302e.zip
Revert "Implement lookup provider for 4x3 and 3x3 widget"
This reverts commit 4052475dd64ecd5445c2f60edb6b644e47315a79.
-rw-r--r--AndroidManifest.xml2
-rw-r--r--res/layout/widget_conversation_list_item.xml12
-rw-r--r--res/layout/widget_message_item_incoming.xml13
-rw-r--r--res/layout/widget_message_item_outgoing.xml2
-rw-r--r--res/values/cm_dimens.xml4
-rw-r--r--src/com/android/messaging/BugleApplication.java4
-rw-r--r--src/com/android/messaging/widget/BaseWidgetFactory.java18
-rw-r--r--src/com/android/messaging/widget/BaseWidgetProvider.java1
-rw-r--r--src/com/android/messaging/widget/WidgetConversationListService.java51
-rw-r--r--src/com/android/messaging/widget/WidgetConversationService.java47
-rw-r--r--src/com/cyanogenmod/messaging/lookup/ILookupClient.java20
-rw-r--r--src/com/cyanogenmod/messaging/lookup/LookupProviderManager.java114
12 files changed, 25 insertions, 263 deletions
diff --git a/AndroidManifest.xml b/AndroidManifest.xml
index 346f75b..d37b576 100644
--- a/AndroidManifest.xml
+++ b/AndroidManifest.xml
@@ -541,8 +541,6 @@
<receiver android:name="com.cyanogenmod.messaging.quickmessage.ClearAllReceiver" />
- <receiver android:name="com.cyanogenmod.messaging.lookup.LookupProviderManager" />
-
</application>
</manifest>
diff --git a/res/layout/widget_conversation_list_item.xml b/res/layout/widget_conversation_list_item.xml
index 8d3f5d4..ecb12ca 100644
--- a/res/layout/widget_conversation_list_item.xml
+++ b/res/layout/widget_conversation_list_item.xml
@@ -28,7 +28,7 @@
android:layout_centerVertical="true"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
- <ImageView
+ <com.cyanogenmod.messaging.ui.AttributionContactIconView
android:id="@+id/avatarView"
style="@style/WidgetConversationListItemAvatar"
android:layout_width="@dimen/contact_icon_view_normal_size"
@@ -38,16 +38,6 @@
android:importantForAccessibility="no"
android:contentDescription="@null" />
<ImageView
- android:id="@+id/attribution_logo"
- android:layout_width="@dimen/attribution_logo_size"
- android:layout_height="@dimen/attribution_logo_size"
- android:src="@null"
- android:layout_gravity="bottom|right"
- android:layout_marginRight="@dimen/convolist_attribution_logo_marginRight"
- android:visibility="gone"
- android:importantForAccessibility="no"
- android:contentDescription="@null"/>
- <ImageView
android:id="@+id/conversation_failed_status_icon"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
diff --git a/res/layout/widget_message_item_incoming.xml b/res/layout/widget_message_item_incoming.xml
index c71e5ff..4dda740 100644
--- a/res/layout/widget_message_item_incoming.xml
+++ b/res/layout/widget_message_item_incoming.xml
@@ -39,7 +39,7 @@
android:layout_marginTop="-4dp"
android:importantForAccessibility="no"
android:contentDescription="@null" />
- <ImageView
+ <com.cyanogenmod.messaging.ui.AttributionContactIconView
android:id="@+id/avatarView"
style="@style/WidgetConversationItemAvatarIncoming"
android:layout_width="@dimen/contact_icon_view_normal_size"
@@ -49,17 +49,6 @@
android:importantForAccessibility="no"
android:contentDescription="@null" />
<ImageView
- android:id="@+id/attribution_logo"
- android:layout_width="@dimen/attribution_logo_size"
- android:layout_height="@dimen/attribution_logo_size"
- android:src="@null"
- android:layout_gravity="bottom|right"
- android:layout_marginRight="@dimen/convo_attribution_logo_marginRight"
- android:layout_marginBottom="@dimen/convo_attribution_logo_marginBottom"
- android:visibility="gone"
- android:importantForAccessibility="no"
- android:contentDescription="@null"/>
- <ImageView
android:id="@+id/conversation_failed_status_icon"
style="@style/WidgetConversationItemFailed"
android:layout_width="wrap_content"
diff --git a/res/layout/widget_message_item_outgoing.xml b/res/layout/widget_message_item_outgoing.xml
index 472b5a2..1c65ccb 100644
--- a/res/layout/widget_message_item_outgoing.xml
+++ b/res/layout/widget_message_item_outgoing.xml
@@ -40,7 +40,7 @@
android:layout_marginTop="-4dp"
android:importantForAccessibility="no"
android:contentDescription="@null" />
- <ImageView
+ <com.android.messaging.ui.AttributtionContactIconView
android:id="@+id/avatarView"
android:layout_width="@dimen/contact_icon_view_normal_size"
android:layout_height="@dimen/contact_icon_view_normal_size"
diff --git a/res/values/cm_dimens.xml b/res/values/cm_dimens.xml
index 2dc13c2..91a8488 100644
--- a/res/values/cm_dimens.xml
+++ b/res/values/cm_dimens.xml
@@ -15,8 +15,4 @@
<dimen name="qm_message_count_height">18dp</dimen>
<dimen name="qm_conversation_bubble_width_snap">15dp</dimen>
<dimen name="qm_conversation_bubble_padding">5dp</dimen>
- <dimen name="attribution_logo_size">16dp</dimen>
- <dimen name="convolist_attribution_logo_marginRight">13dp</dimen>
- <dimen name="convo_attribution_logo_marginRight">5dp</dimen>
- <dimen name="convo_attribution_logo_marginBottom">5dp</dimen>
</resources>
diff --git a/src/com/android/messaging/BugleApplication.java b/src/com/android/messaging/BugleApplication.java
index c95d75e..a3cdfa0 100644
--- a/src/com/android/messaging/BugleApplication.java
+++ b/src/com/android/messaging/BugleApplication.java
@@ -282,9 +282,9 @@ public class BugleApplication extends Application implements UncaughtExceptionHa
}
/**
- * Get the reference to the lookup provider manager
+ * Get the reference to
*
- * @return {@link ILookupClient} or null
+ * @return {@link LookupProviderManager} or null
*/
public static ILookupClient getLookupProviderClient() {
return mLookupProviderManager;
diff --git a/src/com/android/messaging/widget/BaseWidgetFactory.java b/src/com/android/messaging/widget/BaseWidgetFactory.java
index c87a100..30b80ae 100644
--- a/src/com/android/messaging/widget/BaseWidgetFactory.java
+++ b/src/com/android/messaging/widget/BaseWidgetFactory.java
@@ -37,10 +37,8 @@ import com.android.messaging.datamodel.media.ImageRequestDescriptor;
import com.android.messaging.datamodel.media.ImageResource;
import com.android.messaging.datamodel.media.MediaRequest;
import com.android.messaging.datamodel.media.MediaResourceManager;
-import com.android.messaging.datamodel.media.UriImageRequestDescriptor;
import com.android.messaging.util.AvatarUriUtil;
import com.android.messaging.util.LogUtil;
-import com.cyanogenmod.messaging.lookup.LookupProviderManager;
/**
* Remote Views Factory for Bugle Widget.
@@ -81,7 +79,6 @@ abstract class BaseWidgetFactory implements RemoteViewsService.RemoteViewsFactor
if (LogUtil.isLoggable(TAG, LogUtil.VERBOSE)) {
LogUtil.v(TAG, "onCreate");
}
- mContext.sendBroadcast(new Intent(LookupProviderManager.ACTION_CREATED));
}
@Override
@@ -94,7 +91,6 @@ abstract class BaseWidgetFactory implements RemoteViewsService.RemoteViewsFactor
mCursor.close();
mCursor = null;
}
- mContext.sendBroadcast(new Intent(LookupProviderManager.ACTION_DESTROYED));
}
}
@@ -170,23 +166,13 @@ abstract class BaseWidgetFactory implements RemoteViewsService.RemoteViewsFactor
}
protected Bitmap getAvatarBitmap(final Uri avatarUri) {
- if (avatarUri == null) {
- return null;
- }
final String avatarType = avatarUri == null ?
null : AvatarUriUtil.getAvatarType(avatarUri);
-
ImageRequestDescriptor descriptor;
- boolean isAvatarUri = AvatarUriUtil.isAvatarUri(avatarUri);
- boolean isGroupAvatar = AvatarUriUtil.TYPE_GROUP_URI.equals(
- AvatarUriUtil.getAvatarType(avatarUri));
-
- if (isAvatarUri && isGroupAvatar) {
+ if (AvatarUriUtil.TYPE_GROUP_URI.equals(avatarType)) {
descriptor = new AvatarGroupRequestDescriptor(avatarUri, mIconSize, mIconSize);
- } else if (isAvatarUri) {
- descriptor = new AvatarRequestDescriptor(avatarUri, mIconSize, mIconSize);
} else {
- descriptor = new UriImageRequestDescriptor(avatarUri, mIconSize, mIconSize, true, 0, 0);
+ descriptor = new AvatarRequestDescriptor(avatarUri, mIconSize, mIconSize);
}
final MediaRequest<ImageResource> imageRequest =
diff --git a/src/com/android/messaging/widget/BaseWidgetProvider.java b/src/com/android/messaging/widget/BaseWidgetProvider.java
index c56a36f..431a6c7 100644
--- a/src/com/android/messaging/widget/BaseWidgetProvider.java
+++ b/src/com/android/messaging/widget/BaseWidgetProvider.java
@@ -24,7 +24,6 @@ import android.content.Intent;
import android.os.Bundle;
import com.android.messaging.util.LogUtil;
-import com.cyanogenmod.messaging.lookup.LookupProviderManager;
public abstract class BaseWidgetProvider extends AppWidgetProvider {
protected static final String TAG = LogUtil.BUGLE_WIDGET_TAG;
diff --git a/src/com/android/messaging/widget/WidgetConversationListService.java b/src/com/android/messaging/widget/WidgetConversationListService.java
index 0748757..264b98c 100644
--- a/src/com/android/messaging/widget/WidgetConversationListService.java
+++ b/src/com/android/messaging/widget/WidgetConversationListService.java
@@ -20,7 +20,6 @@ import android.content.Context;
import android.content.Intent;
import android.content.res.Resources;
import android.database.Cursor;
-import android.graphics.Bitmap;
import android.graphics.Typeface;
import android.net.Uri;
import android.os.Bundle;
@@ -32,9 +31,8 @@ import android.text.style.ForegroundColorSpan;
import android.text.style.StyleSpan;
import android.view.View;
import android.widget.RemoteViews;
-
import android.widget.RemoteViewsService;
-import com.android.messaging.BugleApplication;
+
import com.android.messaging.R;
import com.android.messaging.datamodel.MessagingContentProvider;
import com.android.messaging.datamodel.data.ConversationListData;
@@ -42,19 +40,17 @@ import com.android.messaging.datamodel.data.ConversationListItemData;
import com.android.messaging.sms.MmsUtils;
import com.android.messaging.ui.UIIntents;
import com.android.messaging.ui.conversationlist.ConversationListItemView;
-import com.android.messaging.util.ContactUtil;
import com.android.messaging.util.ContentType;
import com.android.messaging.util.Dates;
import com.android.messaging.util.LogUtil;
import com.android.messaging.util.OsUtil;
import com.android.messaging.util.PhoneUtils;
-import com.cyanogen.lookup.phonenumber.response.LookupResponse;
public class WidgetConversationListService extends RemoteViewsService {
private static final String TAG = LogUtil.BUGLE_WIDGET_TAG;
@Override
- public RemoteViewsService.RemoteViewsFactory onGetViewFactory(Intent intent) {
+ public RemoteViewsFactory onGetViewFactory(Intent intent) {
if (LogUtil.isLoggable(TAG, LogUtil.VERBOSE)) {
LogUtil.v(TAG, "onGetViewFactory intent: " + intent);
}
@@ -104,14 +100,6 @@ public class WidgetConversationListService extends RemoteViewsService {
final ConversationListItemData conv = new ConversationListItemData();
conv.bind(mCursor);
- LookupResponse lookupResponse = null;
- if (!ContactUtil.isValidContactId(conv.getParticipantContactId())) {
- // Make blocking call
- lookupResponse = BugleApplication.getLookupProviderClient()
- .blockingLookupInfoForPhoneNumber(conv
- .getOtherParticipantNormalizedDestination());
- }
-
// Inflate and fill out the remote view
final RemoteViews remoteViews = new RemoteViews(
mContext.getPackageName(), R.layout.widget_conversation_list_item);
@@ -129,17 +117,8 @@ public class WidgetConversationListService extends RemoteViewsService {
boldifyIfUnread(timeStamp, hasUnreadMessages));
// From
- if (lookupResponse != null) {
- // Fix default if blank
- if (TextUtils.isEmpty(lookupResponse.mName)) {
- lookupResponse.mName = conv.getOtherParticipantNormalizedDestination();
- }
- remoteViews.setTextViewText(R.id.from,
- boldifyIfUnread(lookupResponse.mName, hasUnreadMessages));
- } else {
- remoteViews.setTextViewText(R.id.from,
- boldifyIfUnread(conv.getName(), hasUnreadMessages));
- }
+ remoteViews.setTextViewText(R.id.from,
+ boldifyIfUnread(conv.getName(), hasUnreadMessages));
// Notifications turned off mini-bell icon
remoteViews.setViewVisibility(R.id.conversation_notification_bell,
@@ -171,30 +150,12 @@ public class WidgetConversationListService extends RemoteViewsService {
View.VISIBLE : View.GONE);
Uri iconUri = null;
- if (lookupResponse != null
- && !TextUtils.isEmpty(lookupResponse.mPhotoUrl)) {
- iconUri = Uri.parse(lookupResponse.mPhotoUrl);
- } else {
- if (conv.getIcon() != null) {
- iconUri = Uri.parse(conv.getIcon());
- }
+ if (conv.getIcon() != null) {
+ iconUri = Uri.parse(conv.getIcon());
}
remoteViews.setImageViewBitmap(R.id.avatarView, includeAvatar ?
getAvatarBitmap(iconUri) : null);
- // Attribution logo
- if (lookupResponse != null) {
- Bitmap bitmap = BugleApplication.getLookupProviderClient()
- .getCachedAttributionLogoBitmap(lookupResponse.mProviderName);
- if (bitmap != null) {
- remoteViews.setImageViewBitmap(R.id.attribution_logo, bitmap);
- }
- remoteViews.setViewVisibility(R.id.attribution_logo, (bitmap == null) ? View
- .GONE : View.VISIBLE);
- } else {
- remoteViews.setViewVisibility(R.id.attribution_logo, View.GONE);
- }
-
// Error
// Only show the fail icon if it is not a group conversation.
// And also require that we be the default sms app.
diff --git a/src/com/android/messaging/widget/WidgetConversationService.java b/src/com/android/messaging/widget/WidgetConversationService.java
index 94dc545..4fd3934 100644
--- a/src/com/android/messaging/widget/WidgetConversationService.java
+++ b/src/com/android/messaging/widget/WidgetConversationService.java
@@ -30,9 +30,8 @@ import android.text.format.Formatter;
import android.text.style.ForegroundColorSpan;
import android.view.View;
import android.widget.RemoteViews;
-
import android.widget.RemoteViewsService;
-import com.android.messaging.BugleApplication;
+
import com.android.messaging.R;
import com.android.messaging.datamodel.MessagingContentProvider;
import com.android.messaging.datamodel.data.ConversationMessageData;
@@ -48,20 +47,15 @@ import com.android.messaging.datamodel.media.VideoThumbnailRequest;
import com.android.messaging.sms.MmsUtils;
import com.android.messaging.ui.UIIntents;
import com.android.messaging.util.AvatarUriUtil;
-import com.android.messaging.util.ContactUtil;
import com.android.messaging.util.Dates;
import com.android.messaging.util.LogUtil;
import com.android.messaging.util.OsUtil;
import com.android.messaging.util.PhoneUtils;
-import com.cyanogen.lookup.phonenumber.response.LookupResponse;
-import java.util.LinkedHashMap;
import java.util.List;
public class WidgetConversationService extends RemoteViewsService {
private static final String TAG = LogUtil.BUGLE_WIDGET_TAG;
- private static final LinkedHashMap<String, Bitmap> sAttributionLogoCache = new
- LinkedHashMap<>(5);
private static final int IMAGE_ATTACHMENT_SIZE = 400;
@@ -146,21 +140,13 @@ public class WidgetConversationService extends RemoteViewsService {
final ConversationMessageData message = new ConversationMessageData();
message.bind(mCursor);
- LookupResponse lookupResponse = null;
- if (!ContactUtil.isValidContactId(message.getSenderContactId())) {
- // Make blocking call
- lookupResponse = BugleApplication.getLookupProviderClient()
- .blockingLookupInfoForPhoneNumber(
- message.getSenderNormalizedDestination());
- }
-
// Inflate and fill out the remote view
final RemoteViews remoteViews = new RemoteViews(
mContext.getPackageName(), message.getIsIncoming() ?
R.layout.widget_message_item_incoming :
R.layout.widget_message_item_outgoing);
- final boolean hasUnreadMessages = !message.getIsRead();
+ final boolean hasUnreadMessages = false; //!message.getIsRead();
// Date
remoteViews.setTextViewText(R.id.date, boldifyIfUnread(
@@ -249,34 +235,15 @@ public class WidgetConversationService extends RemoteViewsService {
remoteViews.setViewVisibility(R.id.avatarShadow, includeAvatar ?
View.VISIBLE : View.GONE);
- final Uri avatarUri;
- if (lookupResponse != null
- && !TextUtils.isEmpty(lookupResponse.mPhotoUrl)) {
- avatarUri = Uri.parse(lookupResponse.mPhotoUrl);
- } else {
- avatarUri = AvatarUriUtil.createAvatarUri(
- message.getSenderProfilePhotoUri(),
- message.getSenderFullName(),
- message.getSenderNormalizedDestination(),
- message.getSenderContactLookupKey());
- }
+ final Uri avatarUri = AvatarUriUtil.createAvatarUri(
+ message.getSenderProfilePhotoUri(),
+ message.getSenderFullName(),
+ message.getSenderNormalizedDestination(),
+ message.getSenderContactLookupKey());
remoteViews.setImageViewBitmap(R.id.avatarView, includeAvatar ?
getAvatarBitmap(avatarUri) : null);
- // Attribution logo
- if (lookupResponse != null) {
- Bitmap bitmap = BugleApplication.getLookupProviderClient()
- .getCachedAttributionLogoBitmap(lookupResponse.mProviderName);
- if (bitmap != null) {
- remoteViews.setImageViewBitmap(R.id.attribution_logo, bitmap);
- }
- remoteViews.setViewVisibility(R.id.attribution_logo, (bitmap == null) ? View
- .GONE : View.VISIBLE);
- } else {
- remoteViews.setViewVisibility(R.id.attribution_logo, View.GONE);
- }
-
String text = message.getText();
if (attachmentStringId != 0) {
final String attachment = mContext.getString(attachmentStringId);
diff --git a/src/com/cyanogenmod/messaging/lookup/ILookupClient.java b/src/com/cyanogenmod/messaging/lookup/ILookupClient.java
index e3cd13a..a66b230 100644
--- a/src/com/cyanogenmod/messaging/lookup/ILookupClient.java
+++ b/src/com/cyanogenmod/messaging/lookup/ILookupClient.java
@@ -15,9 +15,6 @@
*/
package com.cyanogenmod.messaging.lookup;
-import android.graphics.Bitmap;
-import com.cyanogen.lookup.phonenumber.response.LookupResponse;
-
/**
* <pre>
* Client interface for talking to lookup provider
@@ -43,23 +40,6 @@ public interface ILookupClient {
void lookupInfoForPhoneNumber(String phoneNumber, boolean requery);
/**
- * Will call for lookup and allow requery of possibly stale data
- *
- * @param phoneNumber {@link String} not null or empty
- *
- * @return {@link com.cyanogen.lookup.phonenumber.response.LookupResponse}
- */
- LookupResponse blockingLookupInfoForPhoneNumber(String phoneNumber);
-
- /**
- * Fetches the possibly cached bitmap for a lookup provider of the given name
- *
- * @param providerName {@link String }
- * @return {@link Bitmap} or null
- */
- Bitmap getCachedAttributionLogoBitmap(String providerName);
-
- /**
* Will mark number as spam
*
* This will automatically format to E164
diff --git a/src/com/cyanogenmod/messaging/lookup/LookupProviderManager.java b/src/com/cyanogenmod/messaging/lookup/LookupProviderManager.java
index 63e2689..8649b6a 100644
--- a/src/com/cyanogenmod/messaging/lookup/LookupProviderManager.java
+++ b/src/com/cyanogenmod/messaging/lookup/LookupProviderManager.java
@@ -17,12 +17,6 @@ package com.cyanogenmod.messaging.lookup;
import android.app.Activity;
import android.app.Application;
-import android.content.BroadcastReceiver;
-import android.content.Context;
-import android.content.Intent;
-import android.content.IntentFilter;
-import android.graphics.Bitmap;
-import android.graphics.Canvas;
import android.os.Bundle;
import android.os.Handler;
import android.os.Looper;
@@ -31,14 +25,12 @@ import android.text.TextUtils;
import android.util.Log;
import com.cyanogen.lookup.phonenumber.provider.LookupProviderImpl;
-import com.cyanogen.lookup.phonenumber.response.StatusCode;
import com.cyanogen.lookup.phonenumber.util.LookupHandlerThread;
import com.cyanogen.lookup.phonenumber.request.LookupRequest;
import com.cyanogen.lookup.phonenumber.response.LookupResponse;
import java.util.ArrayList;
import java.util.HashSet;
-import java.util.LinkedHashMap;
import java.util.List;
import java.util.concurrent.ConcurrentHashMap;
@@ -52,29 +44,20 @@ import java.util.concurrent.ConcurrentHashMap;
* @see {@link LookupRequest.Callback}
* @see {@link ILookupClient}
*/
-public class LookupProviderManager extends BroadcastReceiver implements Application
- .ActivityLifecycleCallbacks, LookupRequest.Callback, ILookupClient {
+public class LookupProviderManager implements Application.ActivityLifecycleCallbacks,
+ LookupRequest.Callback, ILookupClient {
private static final String TAG = "LookupProviderManager";
private static final String THREAD_NAME = "PhoneLookupProviderThread";
// Members
private static final Handler sHandler = new Handler(Looper.getMainLooper());
- private static final LinkedHashMap<String, Bitmap> sAttributionLogoBitmapCache = new
- LinkedHashMap<>(1);
private Application mApplication;
private ConcurrentHashMap<String, LookupResponse> mPhoneNumberLookupCache;
private ConcurrentHashMap<String, HashSet<LookupProviderListener>> mLookupListeners;
private LookupHandlerThread mLookupHandlerThread;
private boolean mIsPhoneNumberLookupInitialized;
private short mActivityCount = 0;
- private short mServiceCount = 0;
-
- public static final String ACTION_CREATED = "service_created";
- public static final String ACTION_DESTROYED = "service_destroyed";
-
- public LookupProviderManager() {
- }
/**
* Constructor
@@ -89,10 +72,6 @@ public class LookupProviderManager extends BroadcastReceiver implements Applicat
mPhoneNumberLookupCache = new ConcurrentHashMap<String, LookupResponse>();
mLookupListeners = new ConcurrentHashMap<String, HashSet<LookupProviderListener>>();
application.registerActivityLifecycleCallbacks(this);
- IntentFilter filter = new IntentFilter();
- filter.addAction(ACTION_CREATED);
- filter.addAction(ACTION_DESTROYED);
- application.registerReceiver(this, filter);
mApplication = application;
}
@@ -124,12 +103,7 @@ public class LookupProviderManager extends BroadcastReceiver implements Applicat
}
mPhoneNumberLookupCache.clear();
mLookupListeners.clear();
- for (Bitmap bitmap : sAttributionLogoBitmapCache.values()) {
- if (bitmap != null && !bitmap.isRecycled()) {
- bitmap.recycle();
- }
- }
- sAttributionLogoBitmapCache.clear();
+ mIsPhoneNumberLookupInitialized = false;
}
/**
@@ -179,17 +153,6 @@ public class LookupProviderManager extends BroadcastReceiver implements Applicat
public void onNewInfo(LookupRequest lookupRequest, final LookupResponse response) {
log("onNewInfo(" + lookupRequest + ", " + response + ")");
mPhoneNumberLookupCache.put(lookupRequest.mPhoneNumber, response);
- // Cache the attribution logo as a bitmap since needed by widget's remoteviews
- if (!sAttributionLogoBitmapCache.containsKey(response.mProviderName)) {
- Bitmap bitmap = Bitmap.createBitmap(response.mAttributionLogo
- .getIntrinsicWidth(), response.mAttributionLogo
- .getIntrinsicHeight(), Bitmap.Config.ARGB_8888);
- Canvas c = new Canvas(bitmap);
- response.mAttributionLogo
- .setBounds(0, 0, c.getWidth(), c.getHeight());
- response.mAttributionLogo.draw(c);
- sAttributionLogoBitmapCache.put(response.mProviderName, bitmap);
- }
if (mLookupListeners.containsKey(lookupRequest.mPhoneNumber)) {
int i = 0;
List<Integer> removalIndexes = new ArrayList<Integer>();
@@ -214,46 +177,13 @@ public class LookupProviderManager extends BroadcastReceiver implements Applicat
}
}
- /* --------------------- Private level service count methods -------------------------------*/
-
- private void onServiceCreated() {
- ++mServiceCount;
- if (mServiceCount == 1) {
- if (!mIsPhoneNumberLookupInitialized) {
- mIsPhoneNumberLookupInitialized = start();
- }
- }
- }
-
- private void onServiceDestroyed() {
- --mServiceCount;
- if (mServiceCount == 0 && mActivityCount == 0) {
- if (mIsPhoneNumberLookupInitialized) {
- stop();
- mIsPhoneNumberLookupInitialized = false;
- }
- }
- }
-
- @Override
- public void onReceive(Context context, Intent intent) {
- String action = intent.getAction();
- if (ACTION_CREATED.equalsIgnoreCase(action)) {
- onServiceCreated();
- } else if (ACTION_DESTROYED.equalsIgnoreCase(action)) {
- onServiceDestroyed();
- }
- }
-
/* --------------------- Activity callback interfaces -------------------------------------*/
@Override
public void onActivityCreated(Activity activity, Bundle savedInstanceState) {
log("onActivityCreated(" + activity + ", " + savedInstanceState + ")");
++mActivityCount;
if (mActivityCount == 1) {
- if (!mIsPhoneNumberLookupInitialized) {
- mIsPhoneNumberLookupInitialized = start();
- }
+ mIsPhoneNumberLookupInitialized = start();
}
}
@@ -277,7 +207,7 @@ public class LookupProviderManager extends BroadcastReceiver implements Applicat
public void onActivityDestroyed(Activity activity) {
log("onActivityCreated(" + activity + ")");
--mActivityCount;
- if (mActivityCount == 0 && mServiceCount == 0) {
+ if (mActivityCount == 0) {
if (mIsPhoneNumberLookupInitialized) {
stop();
mIsPhoneNumberLookupInitialized = false;
@@ -286,40 +216,6 @@ public class LookupProviderManager extends BroadcastReceiver implements Applicat
}
@Override
- public LookupResponse blockingLookupInfoForPhoneNumber(String phoneNumber) {
- LookupResponse response = null;
- if (mLookupHandlerThread != null) {
- response = mLookupHandlerThread.blockingFetchInfoForPhoneNumber(new
- LookupRequest(phoneNumber, this));
- if (response != null && response.mStatusCode != StatusCode.SUCCESS) {
- response = null;
- }
- }
- if (response != null) {
- // Cache the attribution logos as bitmaps since widget needs it
- if (!sAttributionLogoBitmapCache.containsKey(response.mProviderName)) {
- Bitmap bitmap = Bitmap.createBitmap(response.mAttributionLogo
- .getIntrinsicWidth(), response.mAttributionLogo
- .getIntrinsicHeight(), Bitmap.Config.ARGB_8888);
- Canvas c = new Canvas(bitmap);
- response.mAttributionLogo
- .setBounds(0, 0, c.getWidth(), c.getHeight());
- response.mAttributionLogo.draw(c);
- sAttributionLogoBitmapCache.put(response.mProviderName, bitmap);
- }
- }
- return response;
- }
-
- @Override
- public Bitmap getCachedAttributionLogoBitmap(String providerName) {
- if (!TextUtils.isEmpty(providerName)) {
- return sAttributionLogoBitmapCache.get(providerName);
- }
- return null;
- }
-
- @Override
public void lookupInfoForPhoneNumber(String phoneNumber) {
log("lookupInfoForPhoneNumber(" + phoneNumber + ")");
lookupInfoForPhoneNumber(phoneNumber, false);