summaryrefslogtreecommitdiffstats
path: root/src/com/android/settings/enterprise/EnterprisePrivacyPreferenceController.java
diff options
context:
space:
mode:
authorFan Zhang <zhfan@google.com>2017-11-07 10:57:47 -0800
committerFan Zhang <zhfan@google.com>2017-11-07 12:58:48 -0800
commitb5f5ffbece14b4f2882144f465ee67b35d5aa567 (patch)
tree7d5b6518956039cbc3096b2c767eca933b28c575 /src/com/android/settings/enterprise/EnterprisePrivacyPreferenceController.java
parent2260321fd899120e2a049e40dfd3f38343ea9fc4 (diff)
downloadpackages_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.java18
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