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;
}