Merge "Add the extra "Ask every time" if supported only" am: 7b9edcde47

Original change: https://android-review.googlesource.com/c/platform/packages/apps/Settings/+/1455946

Change-Id: Ib2b9864613071c7a6819f03d5c1803b81b9a6575
diff --git a/src/com/android/settings/network/telephony/DefaultSubscriptionController.java b/src/com/android/settings/network/telephony/DefaultSubscriptionController.java
index 1d82f65..5fcedba 100644
--- a/src/com/android/settings/network/telephony/DefaultSubscriptionController.java
+++ b/src/com/android/settings/network/telephony/DefaultSubscriptionController.java
@@ -83,6 +83,10 @@
     /** Called to change the default subscription for the service. */
     protected abstract void setDefaultSubscription(int subscriptionId);
 
+    protected boolean isAskEverytimeSupported() {
+        return true;
+    }
+
     @Override
     public int getAvailabilityStatus(int subId) {
         final List<SubscriptionInfo> subs = SubscriptionUtil.getActiveSubscriptions(mManager);
@@ -123,7 +127,11 @@
             // display subscription based account
             return info.getDisplayName();
         } else {
-            return mContext.getString(R.string.calls_and_sms_ask_every_time);
+            if (isAskEverytimeSupported()) {
+                return mContext.getString(R.string.calls_and_sms_ask_every_time);
+            } else {
+                return "";
+            }
         }
     }
 
@@ -163,9 +171,12 @@
                 subIsAvailable = true;
             }
         }
-        // Add the extra "Ask every time" value at the end.
-        displayNames.add(mContext.getString(R.string.calls_and_sms_ask_every_time));
-        subscriptionIds.add(Integer.toString(SubscriptionManager.INVALID_SUBSCRIPTION_ID));
+
+        if (isAskEverytimeSupported()) {
+            // Add the extra "Ask every time" value at the end.
+            displayNames.add(mContext.getString(R.string.calls_and_sms_ask_every_time));
+            subscriptionIds.add(Integer.toString(SubscriptionManager.INVALID_SUBSCRIPTION_ID));
+        }
 
         mPreference.setEntries(displayNames.toArray(new CharSequence[0]));
         mPreference.setEntryValues(subscriptionIds.toArray(new CharSequence[0]));
diff --git a/src/com/android/settings/network/telephony/SmsDefaultSubscriptionController.java b/src/com/android/settings/network/telephony/SmsDefaultSubscriptionController.java
index cf544ab..fadddd5 100644
--- a/src/com/android/settings/network/telephony/SmsDefaultSubscriptionController.java
+++ b/src/com/android/settings/network/telephony/SmsDefaultSubscriptionController.java
@@ -23,8 +23,12 @@
 
 public class SmsDefaultSubscriptionController extends DefaultSubscriptionController {
 
+    private final boolean mIsAskEverytimeSupported;
+
     public SmsDefaultSubscriptionController(Context context, String preferenceKey) {
         super(context, preferenceKey);
+        mIsAskEverytimeSupported = mContext.getResources()
+                .getBoolean(com.android.internal.R.bool.config_sms_ask_every_time_support);
     }
 
     @Override
@@ -43,6 +47,11 @@
     }
 
     @Override
+    protected boolean isAskEverytimeSupported() {
+        return mIsAskEverytimeSupported;
+    }
+
+    @Override
     public PhoneAccountHandle getDefaultCallingAccountHandle() {
         // Not supporting calling account override by VoIP
         return null;