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

Commit 5226ac61 authored by Jordan Liu's avatar Jordan Liu Committed by Gerrit Code Review
Browse files

Merge "Refresh subscription info when subid changes"

parents 5b7535d5 b1facd20
Loading
Loading
Loading
Loading
+14 −2
Original line number Diff line number Diff line
@@ -104,6 +104,7 @@ public class ApnSettings extends RestrictedSettingsFragment implements
    private RestoreApnProcessHandler mRestoreApnProcessHandler;
    private HandlerThread mRestoreDefaultApnThread;
    private SubscriptionInfo mSubscriptionInfo;
    private int mSubId;
    private UiccController mUiccController;
    private String mMvnoType;
    private String mMvnoMatchData;
@@ -139,6 +140,13 @@ public class ApnSettings extends RestrictedSettingsFragment implements
            } else if(intent.getAction().equals(
                    TelephonyManager.ACTION_SUBSCRIPTION_CARRIER_IDENTITY_CHANGED)) {
                if (!mRestoreDefaultApnMode) {
                    int extraSubId = intent.getIntExtra(TelephonyManager.EXTRA_SUBSCRIPTION_ID,
                            SubscriptionManager.INVALID_SUBSCRIPTION_ID);
                    if (extraSubId != mSubId) {
                        // subscription has changed
                        mSubId = extraSubId;
                        mSubscriptionInfo = getSubscriptionInfo(mSubId);
                    }
                    fillList();
                }
            }
@@ -163,7 +171,7 @@ public class ApnSettings extends RestrictedSettingsFragment implements
    public void onCreate(Bundle icicle) {
        super.onCreate(icicle);
        final Activity activity = getActivity();
        final int subId = activity.getIntent().getIntExtra(SUB_ID,
        mSubId = activity.getIntent().getIntExtra(SUB_ID,
                SubscriptionManager.INVALID_SUBSCRIPTION_ID);

        mIntentFilter = new IntentFilter(
@@ -172,7 +180,7 @@ public class ApnSettings extends RestrictedSettingsFragment implements

        setIfOnlyAvailableForAdmins(true);

        mSubscriptionInfo = SubscriptionManager.from(activity).getActiveSubscriptionInfo(subId);
        mSubscriptionInfo = getSubscriptionInfo(mSubId);
        mUiccController = UiccController.getInstance();

        CarrierConfigManager configManager = (CarrierConfigManager)
@@ -253,6 +261,10 @@ public class ApnSettings extends RestrictedSettingsFragment implements
        return null;
    }

    private SubscriptionInfo getSubscriptionInfo(int subId) {
        return SubscriptionManager.from(getActivity()).getActiveSubscriptionInfo(subId);
    }

    private void fillList() {
        final TelephonyManager tm = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE);
        final int subId = mSubscriptionInfo != null ? mSubscriptionInfo.getSubscriptionId()