Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 438c7d62 authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Android (Google) Code Review
Browse files

Merge "Add alert dialog for disabling current eSIM profile failed"

parents d7e0860b 2febffb2
Loading
Loading
Loading
Loading
+6 −2
Original line number Diff line number Diff line
@@ -124,6 +124,10 @@
    <string name="keyboardview_keycode_delete">Delete</string>
    <!-- Description of the button used to disable current carrier when the device supported embedded SIM. [CHAR LIMIT=30] -->
    <string name="disable_carrier_button_text">Disable eSIM</string>
    <!-- Title of Error message when disabling current carrier failed for the device supported embedded SIM. [CHAR LIMIT=80] -->
    <string name="error_disable_esim_title">Can\u2019t disable eSIM</string>
    <!-- Description of Error message when disabling current carrier failed for the device supported embedded SIM. [CHAR LIMIT=80] -->
    <string name="error_disable_esim_msg">The eSIM can\u2019t be disabled due to an error.</string>
    <!-- Description of the Enter button in a KeyboardView. [CHAR LIMIT=NONE] -->
    <string name="keyboardview_keycode_enter">Enter</string>

@@ -146,8 +150,8 @@
    <string name="kg_sim_pin_instructions">Enter SIM PIN.</string>
    <!-- Instructions for using the SIM PIN unlock screen when there's more than one SIM -->
    <string name="kg_sim_pin_instructions_multi">Enter SIM PIN for \"<xliff:g id="carrier" example="CARD 1">%1$s</xliff:g>\".</string>
    <!-- Instructions for disabling eSIM carrier to unlock the phone with embedded SIM -->
    <string name="kg_sim_lock_instructions_esim">Disable eSIM to use device without mobile service.</string>
    <!-- Instructions for disabling eSIM carrier to unlock the phone with embedded SIM. This message follows the original SIM PIN/PUK message of device without embedded SIM. -->
    <string name="kg_sim_lock_esim_instructions"><xliff:g id="previous_msg" example="Enter SIM PIN.">%1$s</xliff:g> Disable eSIM to use device without mobile service.</string>
    <!-- Instructions for using the PIN unlock screen -->
    <string name="kg_pin_instructions">Enter PIN</string>
    <!-- Instructions for using the password unlock screen -->
+17 −5
Original line number Diff line number Diff line
@@ -16,14 +16,18 @@

package com.android.keyguard;

import android.app.AlertDialog;
import android.app.PendingIntent;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.content.IntentFilter;
import android.os.Handler;
import android.os.HandlerThread;
import android.os.UserHandle;
import android.util.AttributeSet;
import android.view.View;
import android.view.WindowManager;
import android.widget.Button;
import android.telephony.SubscriptionManager;
import android.telephony.SubscriptionInfo;
@@ -50,8 +54,17 @@ class KeyguardEsimArea extends Button implements View.OnClickListener {
                if (ACTION_DISABLE_ESIM.equals(intent.getAction())) {
                    int resultCode = getResultCode();
                    if (resultCode != EuiccManager.EMBEDDED_SUBSCRIPTION_RESULT_OK) {
                        // TODO (b/62680294): Surface more info. to the end users for this failure.
                        Log.e(TAG, "Error disabling esim, result code = " + resultCode);
                        AlertDialog.Builder builder =
                                new AlertDialog.Builder(mContext)
                                        .setMessage(R.string.error_disable_esim_msg)
                                        .setTitle(R.string.error_disable_esim_title)
                                        .setCancelable(false /* cancelable */)
                                        .setNeutralButton(R.string.ok, null /* listener */);
                        AlertDialog alertDialog = builder.create();
                        alertDialog.getWindow().setType(
                                WindowManager.LayoutParams.TYPE_KEYGUARD_DIALOG);
                        alertDialog.show();
                    }
                }
            }
@@ -101,14 +114,13 @@ class KeyguardEsimArea extends Button implements View.OnClickListener {

    @Override
    public void onClick(View v) {
        Intent intent = new Intent(mContext, KeyguardEsimArea.class);
        intent.setAction(ACTION_DISABLE_ESIM);
        Intent intent = new Intent(ACTION_DISABLE_ESIM);
        intent.setPackage(mContext.getPackageName());
        PendingIntent callbackIntent = PendingIntent.getBroadcast(
        PendingIntent callbackIntent = PendingIntent.getBroadcastAsUser(
            mContext,
            0 /* requestCode */,
            intent,
            PendingIntent.FLAG_UPDATE_CURRENT);
            PendingIntent.FLAG_UPDATE_CURRENT, UserHandle.SYSTEM);
        mEuiccManager
                .switchToSubscription(SubscriptionManager.INVALID_SUBSCRIPTION_ID, callbackIntent);
    }
+5 −1
Original line number Diff line number Diff line
@@ -131,7 +131,7 @@ public class KeyguardSimPinView extends KeyguardPinBasedInputView {
        }

        if (isEsimLocked) {
            msg = msg + " " + rez.getString(R.string.kg_sim_lock_instructions_esim);
            msg = rez.getString(R.string.kg_sim_lock_esim_instructions, msg);
        }

        mSecurityMessageDisplay.setMessage(msg);
@@ -187,6 +187,10 @@ public class KeyguardSimPinView extends KeyguardPinBasedInputView {
            msgId = isDefault ? R.string.kg_sim_pin_instructions : R.string.kg_password_pin_failed;
            displayMessage = getContext().getString(msgId);
        }
        if (KeyguardEsimArea.isEsimLocked(mContext, mSubId)) {
            displayMessage = getResources()
                    .getString(R.string.kg_sim_lock_esim_instructions, displayMessage);
        }
        if (DEBUG) Log.d(LOG_TAG, "getPinPasswordErrorMessage:"
                + " attemptsRemaining=" + attemptsRemaining + " displayMessage=" + displayMessage);
        return displayMessage;
+5 −1
Original line number Diff line number Diff line
@@ -181,7 +181,7 @@ public class KeyguardSimPukView extends KeyguardPinBasedInputView {
            }
        }
        if (isEsimLocked) {
            msg = msg + " " + rez.getString(R.string.kg_sim_lock_instructions_esim);
            msg = rez.getString(R.string.kg_sim_lock_esim_instructions, msg);
        }
        mSecurityMessageDisplay.setMessage(msg);
        mSimImageView.setImageTintList(ColorStateList.valueOf(color));
@@ -231,6 +231,10 @@ public class KeyguardSimPukView extends KeyguardPinBasedInputView {
                    R.string.kg_password_puk_failed;
            displayMessage = getContext().getString(msgId);
        }
        if (KeyguardEsimArea.isEsimLocked(mContext, mSubId)) {
            displayMessage = getResources()
                    .getString(R.string.kg_sim_lock_esim_instructions, displayMessage);
        }
        if (DEBUG) Log.d(LOG_TAG, "getPukPasswordErrorMessage:"
                + " attemptsRemaining=" + attemptsRemaining + " displayMessage=" + displayMessage);
        return displayMessage;