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

Commit 2b76694a authored by Brad Ebinger's avatar Brad Ebinger Committed by Gerrit Code Review
Browse files

Merge "Suppress Registration Errors when WFC disabled"

parents ea130bb3 653ebce0
Loading
Loading
Loading
Loading
+89 −81
Original line number Diff line number Diff line
@@ -1525,7 +1525,16 @@ public class ImsPhone extends ImsPhoneBase {
    public void processDisconnectReason(ImsReasonInfo imsReasonInfo) {
        if (imsReasonInfo.mCode == imsReasonInfo.CODE_REGISTRATION_ERROR
                && imsReasonInfo.mExtraMessage != null) {
            // Suppress WFC Registration notifications if WFC is not enabled by the user.
            if (ImsManager.isWfcEnabledByUser(mContext)) {
                processWfcDisconnectForNotification(imsReasonInfo);
            }
        }
    }

    // Processes an IMS disconnect cause for possible WFC registration errors and optionally
    // disable WFC.
    private void processWfcDisconnectForNotification(ImsReasonInfo imsReasonInfo) {
        CarrierConfigManager configManager =
                (CarrierConfigManager) mContext.getSystemService(Context.CARRIER_CONFIG_SERVICE);
        if (configManager == null) {
@@ -1583,9 +1592,9 @@ public class ImsPhone extends ImsPhoneBase {
                    com.android.internal.R.string.wfcRegErrorTitle);

            int idx = Integer.parseInt(codes[1]);
                if (idx < 0 ||
                        idx >= wfcOperatorErrorAlertMessages.length ||
                        idx >= wfcOperatorErrorNotificationMessages.length) {
            if (idx < 0
                    || idx >= wfcOperatorErrorAlertMessages.length
                    || idx >= wfcOperatorErrorNotificationMessages.length) {
                Rlog.e(LOG_TAG, "Invalid index: " + wfcOperatorErrorCodes[i]);
                continue;
            }
@@ -1615,7 +1624,6 @@ public class ImsPhone extends ImsPhoneBase {
            break;
        }
    }
    }

    @Override
    public boolean isUtEnabled() {