diff options
author | Fan Zhang <zhfan@google.com> | 2017-11-07 10:57:47 -0800 |
---|---|---|
committer | Fan Zhang <zhfan@google.com> | 2017-11-07 12:58:48 -0800 |
commit | b5f5ffbece14b4f2882144f465ee67b35d5aa567 (patch) | |
tree | 7d5b6518956039cbc3096b2c767eca933b28c575 /src/com/android/settings/enterprise/EnterprisePrivacyPreferenceController.java | |
parent | 2260321fd899120e2a049e40dfd3f38343ea9fc4 (diff) | |
download | packages_apps_Settings-b5f5ffbece14b4f2882144f465ee67b35d5aa567.tar.gz packages_apps_Settings-b5f5ffbece14b4f2882144f465ee67b35d5aa567.tar.bz2 packages_apps_Settings-b5f5ffbece14b4f2882144f465ee67b35d5aa567.zip |
Remove DynamicAvailabilityPreferenceController.
- This class is over complex to use, and get in the way of show/hide
pref when availability change.
- The function from DynamicAvailabilityPreferenceController can be done
with PreferenceCategoryController.
Bug: 68956750
Bug: 32953042
Test: robotests
Change-Id: Ia7b7e214c072b8c77f5de3d959fdb1dc79217f76
Diffstat (limited to 'src/com/android/settings/enterprise/EnterprisePrivacyPreferenceController.java')
-rw-r--r-- | src/com/android/settings/enterprise/EnterprisePrivacyPreferenceController.java | 18 |
1 files changed, 10 insertions, 8 deletions
diff --git a/src/com/android/settings/enterprise/EnterprisePrivacyPreferenceController.java b/src/com/android/settings/enterprise/EnterprisePrivacyPreferenceController.java index 6ec091bbca..11fc29e78e 100644 --- a/src/com/android/settings/enterprise/EnterprisePrivacyPreferenceController.java +++ b/src/com/android/settings/enterprise/EnterprisePrivacyPreferenceController.java @@ -17,23 +17,27 @@ import android.content.Context; import android.support.v7.preference.Preference; import com.android.settings.R; -import com.android.settings.core.DynamicAvailabilityPreferenceController; +import com.android.settings.core.PreferenceControllerMixin; import com.android.settings.overlay.FeatureFactory; -import com.android.settingslib.core.lifecycle.Lifecycle; +import com.android.settingslib.core.AbstractPreferenceController; -public class EnterprisePrivacyPreferenceController extends DynamicAvailabilityPreferenceController { +public class EnterprisePrivacyPreferenceController extends AbstractPreferenceController implements + PreferenceControllerMixin { private static final String KEY_ENTERPRISE_PRIVACY = "enterprise_privacy"; private final EnterprisePrivacyFeatureProvider mFeatureProvider; - public EnterprisePrivacyPreferenceController(Context context, Lifecycle lifecycle) { - super(context, lifecycle); + public EnterprisePrivacyPreferenceController(Context context) { + super(context); mFeatureProvider = FeatureFactory.getFactory(context) .getEnterprisePrivacyFeatureProvider(context); } @Override public void updateState(Preference preference) { + if (preference == null) { + return; + } final String organizationName = mFeatureProvider.getDeviceOwnerOrganizationName(); if (organizationName == null) { preference.setSummary(R.string.enterprise_privacy_settings_summary_generic); @@ -45,9 +49,7 @@ public class EnterprisePrivacyPreferenceController extends DynamicAvailabilityPr @Override public boolean isAvailable() { - final boolean available = mFeatureProvider.hasDeviceOwner(); - notifyOnAvailabilityUpdate(available); - return available; + return mFeatureProvider.hasDeviceOwner(); } @Override |