Merge "[Telephony settings] Settings crashes when rotate screen in Preferred network type" am: 18e1a7c047 am: df73f7e090
Original change: https://android-review.googlesource.com/c/platform/packages/apps/Settings/+/1432711
Change-Id: I1f0164ef41f5e21d9010a16c2cc8ea8d02e6c270
diff --git a/src/com/android/settings/network/telephony/MobileNetworkActivity.java b/src/com/android/settings/network/telephony/MobileNetworkActivity.java
index a792824..6513384 100644
--- a/src/com/android/settings/network/telephony/MobileNetworkActivity.java
+++ b/src/com/android/settings/network/telephony/MobileNetworkActivity.java
@@ -81,7 +81,7 @@
mCurSubscriptionId = updateSubscriptionIndex;
mFragmentForceReload = (mCurSubscriptionId == oldSubId);
final SubscriptionInfo info = getSubscription();
- updateSubscriptions(info);
+ updateSubscriptions(info, null);
// If the subscription has changed or the new intent doesnt contain the opt in action,
// remove the old discovery dialog. If the activity is being recreated, we will see
@@ -132,7 +132,7 @@
// perform registration after mCurSubscriptionId been configured.
registerActiveSubscriptionsListener();
- updateSubscriptions(subscription);
+ updateSubscriptions(subscription, savedInstanceState);
}
@VisibleForTesting
@@ -154,7 +154,7 @@
public void onChanged() {
SubscriptionInfo info = getSubscription();
int oldSubIndex = mCurSubscriptionId;
- updateSubscriptions(info);
+ updateSubscriptions(info, null);
// Remove the dialog if the subscription associated with this activity changes.
if (info == null) {
@@ -209,14 +209,16 @@
}
@VisibleForTesting
- void updateSubscriptions(SubscriptionInfo subscription) {
+ void updateSubscriptions(SubscriptionInfo subscription, Bundle savedInstanceState) {
if (subscription == null) {
return;
}
final int subscriptionIndex = subscription.getSubscriptionId();
updateTitleAndNavigation(subscription);
- switchFragment(subscription);
+ if (savedInstanceState == null) {
+ switchFragment(subscription);
+ }
mCurSubscriptionId = subscriptionIndex;
mFragmentForceReload = false;