Merge "Disable screen saver setting for non-system users." into tm-qpr-dev am: ed5ba9a647

Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/17871948

Change-Id: I4e146170ffcd2c904e352f23dd1b509285cf6ef4
Ignore-AOSP-First: this is an automerge
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
William Leshner
2022-04-26 19:33:19 +00:00
committed by Automerger Merge Worker
2 changed files with 122 additions and 1 deletions

View File

@@ -14,6 +14,7 @@
package com.android.settings.display;
import android.content.Context;
import android.os.UserManager;
import androidx.preference.Preference;
@@ -32,8 +33,11 @@ public class ScreenSaverPreferenceController extends AbstractPreferenceControlle
@Override
public boolean isAvailable() {
return mContext.getResources().getBoolean(
final boolean dreamsSupported = mContext.getResources().getBoolean(
com.android.internal.R.bool.config_dreamsSupported);
final boolean dreamsOnlyEnabledForSystemUser = mContext.getResources().getBoolean(
com.android.internal.R.bool.config_dreamsOnlyEnabledForSystemUser);
return dreamsSupported && (!dreamsOnlyEnabledForSystemUser || isSystemUser());
}
@Override
@@ -45,4 +49,9 @@ public class ScreenSaverPreferenceController extends AbstractPreferenceControlle
public void updateState(Preference preference) {
preference.setSummary(DreamSettings.getSummaryTextWithDreamName(mContext));
}
private boolean isSystemUser() {
final UserManager userManager = mContext.getSystemService(UserManager.class);
return userManager.isSystemUser();
}
}