Merge "Fix preferred apn not selected when back from edit" into main

This commit is contained in:
Chaohui Wang
2024-06-11 07:39:01 +00:00
committed by Android (Google) Code Review

View File

@@ -99,6 +99,8 @@ public class ApnSettings extends RestrictedSettingsFragment
private UserManager mUserManager; private UserManager mUserManager;
private int mSubId; private int mSubId;
private PreferredApnRepository mPreferredApnRepository; private PreferredApnRepository mPreferredApnRepository;
@Nullable
private String mPreferredApnKey;
private String mMvnoType; private String mMvnoType;
private String mMvnoMatchData; private String mMvnoMatchData;
@@ -175,6 +177,7 @@ public class ApnSettings extends RestrictedSettingsFragment
}); });
mPreferredApnRepository.collectPreferredApn(viewLifecycleOwner, (preferredApn) -> { mPreferredApnRepository.collectPreferredApn(viewLifecycleOwner, (preferredApn) -> {
mPreferredApnKey = preferredApn;
final PreferenceGroup apnPreferenceList = findPreference(APN_LIST); final PreferenceGroup apnPreferenceList = findPreference(APN_LIST);
for (int i = 0; i < apnPreferenceList.getPreferenceCount(); i++) { for (int i = 0; i < apnPreferenceList.getPreferenceCount(); i++) {
ApnPreference apnPreference = (ApnPreference) apnPreferenceList.getPreference(i); ApnPreference apnPreference = (ApnPreference) apnPreferenceList.getPreference(i);
@@ -259,6 +262,7 @@ public class ApnSettings extends RestrictedSettingsFragment
((type == null) || type.contains(ApnSetting.TYPE_DEFAULT_STRING)); ((type == null) || type.contains(ApnSetting.TYPE_DEFAULT_STRING));
pref.setDefaultSelectable(defaultSelectable); pref.setDefaultSelectable(defaultSelectable);
if (defaultSelectable) { if (defaultSelectable) {
pref.setIsChecked(key.equals(mPreferredApnKey));
apnList.add(pref); apnList.add(pref);
} else { } else {
mmsApnList.add(pref); mmsApnList.add(pref);