Update eSIM deletion strings.

Adds some conditional behavior for the confirmation screens.
When the erase eSIM option is visible and checked, shows alternate string.

Fixes: 126262481
Fixes: 118751918
Test: visual inspection & make -j RunSettingsRoboTests
Change-Id: I40f983b03ad470d785bf104e645dbc92e7897d2d
diff --git a/src/com/android/settings/MasterClear.java b/src/com/android/settings/MasterClear.java
index c78115d..14a6aed 100644
--- a/src/com/android/settings/MasterClear.java
+++ b/src/com/android/settings/MasterClear.java
@@ -102,7 +102,8 @@
     private View mExternalStorageContainer;
     @VisibleForTesting
     CheckBox mExternalStorage;
-    private View mEsimStorageContainer;
+    @VisibleForTesting
+    View mEsimStorageContainer;
     @VisibleForTesting
     CheckBox mEsimStorage;
     @VisibleForTesting
@@ -181,7 +182,8 @@
     void showFinalConfirmation() {
         final Bundle args = new Bundle();
         args.putBoolean(ERASE_EXTERNAL_EXTRA, mExternalStorage.isChecked());
-        args.putBoolean(ERASE_ESIMS_EXTRA, mEsimStorage.isChecked());
+        args.putBoolean(ERASE_ESIMS_EXTRA,
+            mEsimStorageContainer.getVisibility() == View.VISIBLE && mEsimStorage.isChecked());
         new SubSettingLauncher(getContext())
                 .setDestination(MasterClearConfirm.class.getName())
                 .setArguments(args)
diff --git a/src/com/android/settings/MasterClearConfirm.java b/src/com/android/settings/MasterClearConfirm.java
index 618dd2c..ac97c11 100644
--- a/src/com/android/settings/MasterClearConfirm.java
+++ b/src/com/android/settings/MasterClearConfirm.java
@@ -40,6 +40,8 @@
 import android.widget.Button;
 import android.widget.TextView;
 
+import androidx.annotation.VisibleForTesting;
+
 import com.android.settings.core.InstrumentedFragment;
 import com.android.settings.enterprise.ActionDisabledByAdminDialogHelper;
 import com.android.settingslib.RestrictedLockUtilsInternal;
@@ -62,9 +64,9 @@
 public class MasterClearConfirm extends InstrumentedFragment {
     private final static String TAG = "MasterClearConfirm";
 
-    private View mContentView;
+    @VisibleForTesting View mContentView;
     private boolean mEraseSdCard;
-    private boolean mEraseEsims;
+    @VisibleForTesting boolean mEraseEsims;
 
     /**
      * The user has gone through the multiple confirmation, so now we go ahead
@@ -199,6 +201,7 @@
         setUpActionBarAndTitle();
         establishFinalConfirmationState();
         setAccessibilityTitle();
+        setSubtitle();
         return mContentView;
     }
 
@@ -212,6 +215,14 @@
         }
     }
 
+    @VisibleForTesting
+    void setSubtitle() {
+        if (mEraseEsims) {
+            ((TextView) mContentView.findViewById(R.id.master_clear_confirm))
+                .setText(R.string.master_clear_final_desc_esim);
+        }
+    }
+
     @Override
     public void onCreate(Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
diff --git a/src/com/android/settings/ResetNetwork.java b/src/com/android/settings/ResetNetwork.java
index 5d7dd99..424d976 100644
--- a/src/com/android/settings/ResetNetwork.java
+++ b/src/com/android/settings/ResetNetwork.java
@@ -42,6 +42,8 @@
 import android.widget.Spinner;
 import android.widget.TextView;
 
+import androidx.annotation.VisibleForTesting;
+
 import com.android.internal.telephony.PhoneConstants;
 import com.android.settings.core.InstrumentedFragment;
 import com.android.settings.core.SubSettingLauncher;
@@ -74,8 +76,8 @@
     private View mContentView;
     private Spinner mSubscriptionSpinner;
     private Button mInitiateButton;
-    private View mEsimContainer;
-    private CheckBox mEsimCheckbox;
+    @VisibleForTesting View mEsimContainer;
+    @VisibleForTesting CheckBox mEsimCheckbox;
 
     @Override
     public void onCreate(@Nullable Bundle savedInstanceState) {
@@ -112,14 +114,16 @@
         }
     }
 
-    private void showFinalConfirmation() {
+    @VisibleForTesting
+    void showFinalConfirmation() {
         Bundle args = new Bundle();
         if (mSubscriptions != null && mSubscriptions.size() > 0) {
             int selectedIndex = mSubscriptionSpinner.getSelectedItemPosition();
             SubscriptionInfo subscription = mSubscriptions.get(selectedIndex);
             args.putInt(PhoneConstants.SUBSCRIPTION_KEY, subscription.getSubscriptionId());
         }
-        args.putBoolean(MasterClear.ERASE_ESIMS_EXTRA, mEsimCheckbox.isChecked());
+        args.putBoolean(MasterClear.ERASE_ESIMS_EXTRA,
+            mEsimContainer.getVisibility() == View.VISIBLE && mEsimCheckbox.isChecked());
         new SubSettingLauncher(getContext())
                 .setDestination(ResetNetworkConfirm.class.getName())
                 .setArguments(args)
diff --git a/src/com/android/settings/ResetNetworkConfirm.java b/src/com/android/settings/ResetNetworkConfirm.java
index 72e1919..376b726 100644
--- a/src/com/android/settings/ResetNetworkConfirm.java
+++ b/src/com/android/settings/ResetNetworkConfirm.java
@@ -40,6 +40,7 @@
 import android.view.View;
 import android.view.ViewGroup;
 import android.widget.Button;
+import android.widget.TextView;
 import android.widget.Toast;
 
 import androidx.annotation.VisibleForTesting;
@@ -64,7 +65,7 @@
  */
 public class ResetNetworkConfirm extends InstrumentedFragment {
 
-    private View mContentView;
+    @VisibleForTesting View mContentView;
     private int mSubId = SubscriptionManager.INVALID_SUBSCRIPTION_ID;
     @VisibleForTesting boolean mEraseEsim;
     @VisibleForTesting EraseEsimAsyncTask mEraseEsimTask;
@@ -207,6 +208,14 @@
                 .setOnClickListener(mFinalClickListener);
     }
 
+    @VisibleForTesting
+    void setSubtitle() {
+        if (mEraseEsim) {
+            ((TextView) mContentView.findViewById(R.id.reset_network_confirm))
+                    .setText(R.string.reset_network_final_desc_esim);
+        }
+    }
+
     @Override
     public View onCreateView(LayoutInflater inflater, ViewGroup container,
             Bundle savedInstanceState) {
@@ -224,6 +233,7 @@
         }
         mContentView = inflater.inflate(R.layout.reset_network_confirm, null);
         establishFinalConfirmationState();
+        setSubtitle();
         return mContentView;
     }