summaryrefslogtreecommitdiffstats
path: root/src/com/android/settings/network
diff options
context:
space:
mode:
authorBonian Chen <bonianchen@google.com>2020-05-04 10:41:47 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2020-05-04 10:41:47 +0000
commit1ab100e936a6b92c6797f5d6b5b0e99a0e5f81f3 (patch)
treea755c35a850397e47c7e9bc03dac6b27f049cce5 /src/com/android/settings/network
parent068eb89251c205da08a6ded343badb0e162f8822 (diff)
parentd231727e3b6dbe1a03437b6d8ca8b759b60761cc (diff)
downloadpackages_apps_Settings-1ab100e936a6b92c6797f5d6b5b0e99a0e5f81f3.tar.gz
packages_apps_Settings-1ab100e936a6b92c6797f5d6b5b0e99a0e5f81f3.tar.bz2
packages_apps_Settings-1ab100e936a6b92c6797f5d6b5b0e99a0e5f81f3.zip
Merge "[Settings] Code refactor" into rvc-dev
Diffstat (limited to 'src/com/android/settings/network')
-rw-r--r--src/com/android/settings/network/telephony/EnabledNetworkModePreferenceController.java35
-rw-r--r--src/com/android/settings/network/telephony/Enhanced4gBasePreferenceController.java11
2 files changed, 32 insertions, 14 deletions
diff --git a/src/com/android/settings/network/telephony/EnabledNetworkModePreferenceController.java b/src/com/android/settings/network/telephony/EnabledNetworkModePreferenceController.java
index 5343709208..d5a192a545 100644
--- a/src/com/android/settings/network/telephony/EnabledNetworkModePreferenceController.java
+++ b/src/com/android/settings/network/telephony/EnabledNetworkModePreferenceController.java
@@ -61,19 +61,6 @@ public class EnabledNetworkModePreferenceController extends
public EnabledNetworkModePreferenceController(Context context, String key) {
super(context, key);
- mPreferredNetworkModeObserver = new PreferredNetworkModeContentObserver(
- new Handler(Looper.getMainLooper()));
- mPreferredNetworkModeObserver.setPreferredNetworkModeChangedListener(
- () -> updatePreference());
- }
-
- private void updatePreference() {
- if (mPreferenceScreen != null) {
- displayPreference(mPreferenceScreen);
- }
- if (mPreference != null) {
- updateState(mPreference);
- }
}
@Override
@@ -100,11 +87,17 @@ public class EnabledNetworkModePreferenceController extends
@OnLifecycleEvent(ON_START)
public void onStart() {
+ if (mPreferredNetworkModeObserver == null) {
+ return;
+ }
mPreferredNetworkModeObserver.register(mContext, mSubId);
}
@OnLifecycleEvent(ON_STOP)
public void onStop() {
+ if (mPreferredNetworkModeObserver == null) {
+ return;
+ }
mPreferredNetworkModeObserver.unregister(mContext);
}
@@ -151,9 +144,25 @@ public class EnabledNetworkModePreferenceController extends
mCarrierConfigManager = mContext.getSystemService(CarrierConfigManager.class);
mBuilder = new PreferenceEntriesBuilder(mContext, mSubId);
+ if (mPreferredNetworkModeObserver == null) {
+ mPreferredNetworkModeObserver = new PreferredNetworkModeContentObserver(
+ new Handler(Looper.getMainLooper()));
+ mPreferredNetworkModeObserver.setPreferredNetworkModeChangedListener(
+ () -> updatePreference());
+ }
+
lifecycle.addObserver(this);
}
+ private void updatePreference() {
+ if (mPreferenceScreen != null) {
+ displayPreference(mPreferenceScreen);
+ }
+ if (mPreference != null) {
+ updateState(mPreference);
+ }
+ }
+
private final static class PreferenceEntriesBuilder {
private CarrierConfigManager mCarrierConfigManager;
private Context mContext;
diff --git a/src/com/android/settings/network/telephony/Enhanced4gBasePreferenceController.java b/src/com/android/settings/network/telephony/Enhanced4gBasePreferenceController.java
index 3a91616a3c..91d01d36a1 100644
--- a/src/com/android/settings/network/telephony/Enhanced4gBasePreferenceController.java
+++ b/src/com/android/settings/network/telephony/Enhanced4gBasePreferenceController.java
@@ -69,10 +69,13 @@ public class Enhanced4gBasePreferenceController extends TelephonyTogglePreferenc
public Enhanced4gBasePreferenceController(Context context, String key) {
super(context, key);
m4gLteListeners = new ArrayList<>();
- mPhoneStateListener = new PhoneCallStateListener();
}
public Enhanced4gBasePreferenceController init(int subId) {
+ if (mPhoneStateListener == null) {
+ mPhoneStateListener = new PhoneCallStateListener();
+ }
+
if (mSubId == subId) {
return this;
}
@@ -122,11 +125,17 @@ public class Enhanced4gBasePreferenceController extends TelephonyTogglePreferenc
@Override
public void onStart() {
+ if (mPhoneStateListener == null) {
+ return;
+ }
mPhoneStateListener.register(mContext, mSubId);
}
@Override
public void onStop() {
+ if (mPhoneStateListener == null) {
+ return;
+ }
mPhoneStateListener.unregister();
}