Enforce BaseUserRestriction for DISALLOW_CONFIG_SCREEN_TIMEOUT

Fix: 329202191
Test: pm set-user-restriction --user 0 no_config_screen_timeout 1
Change-Id: Icd35365f446296fb53b1068d278d4cf5fd25939e
This commit is contained in:
Chaohui Wang
2024-03-12 16:22:33 +08:00
parent 3c26c93bd5
commit 77ecdc7c04

View File

@@ -23,6 +23,7 @@ import static com.android.settings.display.ScreenTimeoutSettings.FALLBACK_SCREEN
import android.app.admin.DevicePolicyManager;
import android.content.Context;
import android.os.Process;
import android.os.UserHandle;
import android.os.UserManager;
import android.provider.Settings;
@@ -67,9 +68,13 @@ public class ScreenTimeoutPreferenceController extends BasePreferenceController
.getString(DISABLED_BY_IT_ADMIN_TITLE,
() -> mContext.getString(R.string.disabled_by_policy_title)));
((RestrictedPreference) preference).setDisabledByAdmin(admin);
} else {
preference.setSummary(getTimeoutSummary(maxTimeout));
return;
}
if (UserManager.get(mContext).hasBaseUserRestriction(
UserManager.DISALLOW_CONFIG_SCREEN_TIMEOUT, Process.myUserHandle())) {
preference.setEnabled(false);
}
preference.setSummary(getTimeoutSummary(maxTimeout));
}
private CharSequence getTimeoutSummary(long maxTimeout) {