summaryrefslogtreecommitdiffstats
path: root/src/com/android/settings/accounts/EnterpriseDisclosurePreferenceController.java
diff options
context:
space:
mode:
authorSunny Shao <sunnyshao@google.com>2021-06-10 15:46:58 +0800
committerSunny Shao <sunnyshao@google.com>2021-06-10 20:14:56 +0800
commita6eb37b215ab6c7a52cc5bf0c45325ad8fc1f8d6 (patch)
tree56a7a5b7ad01a0d7dff4d806292dc13d6e5a0b34 /src/com/android/settings/accounts/EnterpriseDisclosurePreferenceController.java
parentbbab97c95570e80e7cd99ac09109397f8b55f2e2 (diff)
downloadpackages_apps_Settings-a6eb37b215ab6c7a52cc5bf0c45325ad8fc1f8d6.tar.gz
packages_apps_Settings-a6eb37b215ab6c7a52cc5bf0c45325ad8fc1f8d6.tar.bz2
packages_apps_Settings-a6eb37b215ab6c7a52cc5bf0c45325ad8fc1f8d6.zip
Fix Learn more link placement is wrong problem
- Use the new style of the FooterPreference. Fixes: 189389674 Test: Robo test Change-Id: I1529952181cca0eccd18f911eaa265b19dbb97f7
Diffstat (limited to 'src/com/android/settings/accounts/EnterpriseDisclosurePreferenceController.java')
-rw-r--r--src/com/android/settings/accounts/EnterpriseDisclosurePreferenceController.java37
1 files changed, 28 insertions, 9 deletions
diff --git a/src/com/android/settings/accounts/EnterpriseDisclosurePreferenceController.java b/src/com/android/settings/accounts/EnterpriseDisclosurePreferenceController.java
index b4dbf3d2c8..238e93790d 100644
--- a/src/com/android/settings/accounts/EnterpriseDisclosurePreferenceController.java
+++ b/src/com/android/settings/accounts/EnterpriseDisclosurePreferenceController.java
@@ -17,16 +17,19 @@
package com.android.settings.accounts;
import android.content.Context;
+import android.content.Intent;
+import android.provider.Settings;
import androidx.annotation.VisibleForTesting;
-import androidx.preference.Preference;
+import androidx.preference.PreferenceScreen;
+import com.android.settings.R;
import com.android.settings.core.BasePreferenceController;
import com.android.settings.enterprise.EnterprisePrivacyFeatureProvider;
import com.android.settings.overlay.FeatureFactory;
+import com.android.settingslib.widget.FooterPreference;
public class EnterpriseDisclosurePreferenceController extends BasePreferenceController {
-
private final EnterprisePrivacyFeatureProvider mFeatureProvider;
public EnterpriseDisclosurePreferenceController(Context context, String key) {
@@ -37,6 +40,16 @@ public class EnterpriseDisclosurePreferenceController extends BasePreferenceCont
}
@Override
+ public void displayPreference(PreferenceScreen screen) {
+ super.displayPreference(screen);
+ final CharSequence disclosure = getDisclosure();
+ if (disclosure == null) {
+ return;
+ }
+ updateFooterPreference(screen, disclosure);
+ }
+
+ @Override
public int getAvailabilityStatus() {
if (getDisclosure() == null) {
return UNSUPPORTED_ON_DEVICE;
@@ -49,12 +62,18 @@ public class EnterpriseDisclosurePreferenceController extends BasePreferenceCont
return mFeatureProvider.getDeviceOwnerDisclosure();
}
- @Override
- public void updateState(Preference preference) {
- final CharSequence disclosure = getDisclosure();
- if (disclosure == null) {
- return;
- }
- preference.setTitle(disclosure);
+ void updateFooterPreference(PreferenceScreen screen, CharSequence disclosure) {
+ final FooterPreference footerPreference = screen.findPreference(getPreferenceKey());
+ footerPreference.setTitle(disclosure);
+ footerPreference.setLearnMoreAction(view -> {
+ mContext.startActivity(new Intent(Settings.ACTION_ENTERPRISE_PRIVACY_SETTINGS));
+ });
+ final String learnMoreContentDescription = mContext.getString(
+ R.string.footer_learn_more_content_description, getLabelName());
+ footerPreference.setLearnMoreContentDescription(learnMoreContentDescription);
+ }
+
+ private String getLabelName() {
+ return mContext.getString(R.string.header_add_an_account);
}
}