Allow Device Management Role Holder to update Settings strings.
Test: manual Bug: 188414370 Change-Id: I6e1a06619799a9e99382d791e72e2e4518f93cac
This commit is contained in:
@@ -16,6 +16,7 @@
|
||||
|
||||
package com.android.settings.display;
|
||||
|
||||
import static android.app.admin.DevicePolicyResources.Strings.Settings.DISABLED_BY_IT_ADMIN_TITLE;
|
||||
import static android.provider.Settings.System.SCREEN_OFF_TIMEOUT;
|
||||
|
||||
import static com.android.settings.display.ScreenTimeoutSettings.FALLBACK_SCREEN_TIMEOUT_VALUE;
|
||||
@@ -60,7 +61,9 @@ public class ScreenTimeoutPreferenceController extends BasePreferenceController
|
||||
final RestrictedLockUtils.EnforcedAdmin admin = getPreferenceDisablingAdmin(maxTimeout);
|
||||
if (admin != null) {
|
||||
preference.setEnabled(false);
|
||||
preference.setSummary(mContext.getText(R.string.disabled_by_policy_title));
|
||||
preference.setSummary(mContext.getSystemService(DevicePolicyManager.class)
|
||||
.getString(DISABLED_BY_IT_ADMIN_TITLE,
|
||||
() -> mContext.getString(R.string.disabled_by_policy_title)));
|
||||
((RestrictedPreference) preference).setDisabledByAdmin(admin);
|
||||
} else {
|
||||
preference.setSummary(getTimeoutSummary(maxTimeout));
|
||||
|
@@ -16,6 +16,7 @@
|
||||
|
||||
package com.android.settings.display;
|
||||
|
||||
import static android.app.admin.DevicePolicyResources.Strings.Settings.OTHER_OPTIONS_DISABLED_BY_ADMIN;
|
||||
import static android.hardware.SensorPrivacyManager.Sensors.CAMERA;
|
||||
import static android.provider.Settings.System.SCREEN_OFF_TIMEOUT;
|
||||
|
||||
@@ -85,6 +86,8 @@ public class ScreenTimeoutSettings extends RadioButtonPickerFragment implements
|
||||
}
|
||||
};
|
||||
|
||||
private DevicePolicyManager mDevicePolicyManager;
|
||||
|
||||
@VisibleForTesting
|
||||
Context mContext;
|
||||
|
||||
@@ -116,6 +119,7 @@ public class ScreenTimeoutSettings extends RadioButtonPickerFragment implements
|
||||
public void onAttach(Context context) {
|
||||
super.onAttach(context);
|
||||
mContext = context;
|
||||
mDevicePolicyManager = mContext.getSystemService(DevicePolicyManager.class);
|
||||
mInitialEntries = getResources().getStringArray(R.array.screen_timeout_entries);
|
||||
mInitialValues = getResources().getStringArray(R.array.screen_timeout_values);
|
||||
mAdaptiveSleepController = new AdaptiveSleepPreferenceController(context);
|
||||
@@ -219,8 +223,9 @@ public class ScreenTimeoutSettings extends RadioButtonPickerFragment implements
|
||||
|
||||
@VisibleForTesting
|
||||
void setupDisabledFooterPreference() {
|
||||
final String textDisabledByAdmin = getResources().getString(
|
||||
R.string.admin_disabled_other_options);
|
||||
final String textDisabledByAdmin = mDevicePolicyManager.getString(
|
||||
OTHER_OPTIONS_DISABLED_BY_ADMIN, () -> getResources().getString(
|
||||
R.string.admin_disabled_other_options));
|
||||
final String textMoreDetails = getResources().getString(R.string.admin_more_details);
|
||||
|
||||
final SpannableString spannableString = new SpannableString(
|
||||
|
Reference in New Issue
Block a user