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

Commit 58f9cbd6 authored by Robert Greenwalt's avatar Robert Greenwalt Committed by Android (Google) Code Review
Browse files

Merge "pre-provide the mvno data of the edited apn" into jb-mr2-dev

parents 1c541aec cd1cb16b
Loading
Loading
Loading
Loading
+18 −3
Original line number Diff line number Diff line
@@ -94,6 +94,7 @@ public class ApnEditor extends PreferenceActivity
    private boolean mNewApn;
    private boolean mFirstTime;
    private Resources mRes;
    private TelephonyManager mTelephonyManager;

    /**
     * Standard projection for the interesting columns of a normal note.
@@ -224,6 +225,8 @@ public class ApnEditor extends PreferenceActivity
        mCursor = managedQuery(mUri, sProjection, null, null);
        mCursor.moveToFirst();

        mTelephonyManager = (TelephonyManager) getSystemService(TELEPHONY_SERVICE);

        fillUi();
    }

@@ -359,18 +362,30 @@ public class ApnEditor extends PreferenceActivity
        }
    }

    private String mvnoDescription(String raw) {
        int mvnoIndex = mMvnoType.findIndexOfValue(raw);
    private String mvnoDescription(String newValue) {
        int mvnoIndex = mMvnoType.findIndexOfValue(newValue);
        String oldValue = mMvnoType.getValue();

        if (mvnoIndex == -1) {
            return null;
        } else {
            String[] values = mRes.getStringArray(R.array.mvno_type_entries);
            if (values[mvnoIndex].equals("None")) {
                mMvnoMatchData.setEnabled(false);
                mMvnoMatchData.setText("");
            } else {
                mMvnoMatchData.setEnabled(true);
            }
            if (newValue != null && newValue.equals(oldValue) == false) {
                if (values[mvnoIndex].equals("SPN")) {
                    mMvnoMatchData.setText(mTelephonyManager.getSimOperatorName());
                } else if (values[mvnoIndex].equals("IMSI")) {
                    String numeric =
                            SystemProperties.get(TelephonyProperties.PROPERTY_ICC_OPERATOR_NUMERIC);
                    mMvnoMatchData.setText(numeric + "x");
                } else if (values[mvnoIndex].equals("GID")) {
                    mMvnoMatchData.setText(mTelephonyManager.getGroupIdLevel1());
                }
            }

            try {
                return values[mvnoIndex];