[Settings] Avoid from redraw UI when first time onResume am: 17ad56b3fc

Change-Id: I541b8e9003918d006f5c815673d2832532cabbaa
This commit is contained in:
Bonian Chen
2020-05-13 13:53:07 +00:00
committed by Automerger Merge Worker

View File

@@ -73,7 +73,7 @@ public class MobileNetworkSettings extends AbstractMobileNetworkSettings {
private String mClickedPrefKey;
private ActiveSubsciptionsListener mActiveSubsciptionsListener;
private boolean mActiveSubsciptionsListenerStarting;
private boolean mDropFirstSubscriptionChangeNotify;
private int mActiveSubsciptionsListenerCount;
public MobileNetworkSettings() {
@@ -207,20 +207,20 @@ public class MobileNetworkSettings extends AbstractMobileNetworkSettings {
public void onResume() {
super.onResume();
if (mActiveSubsciptionsListener == null) {
mActiveSubsciptionsListenerStarting = true;
mActiveSubsciptionsListener = new ActiveSubsciptionsListener(
getContext().getMainLooper(), getContext(), mSubId) {
public void onChanged() {
onSubscriptionDetailChanged();
}
};
mActiveSubsciptionsListenerStarting = false;
mDropFirstSubscriptionChangeNotify = true;
}
mActiveSubsciptionsListener.start();
}
private void onSubscriptionDetailChanged() {
if (mActiveSubsciptionsListenerStarting) {
if (mDropFirstSubscriptionChangeNotify) {
mDropFirstSubscriptionChangeNotify = false;
Log.d(LOG_TAG, "Callback during onResume()");
return;
}
@@ -235,6 +235,14 @@ public class MobileNetworkSettings extends AbstractMobileNetworkSettings {
});
}
@Override
public void onDestroy() {
if (mActiveSubsciptionsListener != null) {
mActiveSubsciptionsListener.stop();
}
super.onDestroy();
}
@VisibleForTesting
void onRestoreInstance(Bundle icicle) {
if (icicle != null) {