From b3585c830608c93e4b2830cdde12ff7954583709 Mon Sep 17 00:00:00 2001 From: Ricardo Cerqueira Date: Wed, 8 Jun 2016 15:01:49 +0100 Subject: PhoneUtils: Doublecheck that the system default is actually usable Before deciding a subscription is a usable default, confirm it actually matches a slot. The corresponding SIM may have been removed from the system, which would get us stuck in a "Network not ready." scenario Additionally, remove "has a preferred SIM" from the "ready for action" checks. A preferred SIM is only relevant in send/download scenarios for which we have prompts; for other actions (delete, resend, move), it's pointless to block on the lack of a default. Change-Id: I6067589a56c0da9d993e114654664ef3a0aa8688 Ref: CYNGNOS-3013 --- src/com/android/messaging/util/PhoneUtils.java | 3 +++ src/com/android/messaging/util/UiUtils.java | 5 +---- 2 files changed, 4 insertions(+), 4 deletions(-) (limited to 'src') diff --git a/src/com/android/messaging/util/PhoneUtils.java b/src/com/android/messaging/util/PhoneUtils.java index dfbf924..469a347 100644 --- a/src/com/android/messaging/util/PhoneUtils.java +++ b/src/com/android/messaging/util/PhoneUtils.java @@ -565,6 +565,9 @@ public abstract class PhoneUtils { if (systemDefaultSubId < 0) { // Always use -1 for any negative subId from system return ParticipantData.DEFAULT_SELF_SUB_ID; + } else if (mSubscriptionManager.getSlotId(systemDefaultSubId) < 0) { + // Our default isn't inserted. Use the "select one" internal default. + return ParticipantData.DEFAULT_SELF_SUB_ID; } return systemDefaultSubId; } diff --git a/src/com/android/messaging/util/UiUtils.java b/src/com/android/messaging/util/UiUtils.java index 6ff01ba..eaf0216 100644 --- a/src/com/android/messaging/util/UiUtils.java +++ b/src/com/android/messaging/util/UiUtils.java @@ -46,7 +46,6 @@ import android.widget.Toast; import com.android.messaging.Factory; import com.android.messaging.R; -import com.android.messaging.datamodel.data.ParticipantData; import com.android.messaging.ui.SnackBar; import com.android.messaging.ui.SnackBar.Placement; import com.android.messaging.ui.conversationlist.ConversationListActivity; @@ -335,9 +334,7 @@ public class UiUtils { // Supports SMS? // Has a preferred sim? // Is the default sms app? - return phoneUtils.isSmsCapable() && phoneUtils.isDefaultSmsApp() && - (phoneUtils.getHasPreferredSmsSim() || PhoneUtils.getOverrideSendingSubId() - != ParticipantData.DEFAULT_SELF_SUB_ID); + return phoneUtils.isSmsCapable() && phoneUtils.isDefaultSmsApp(); } /* -- cgit v1.2.3