Change screensaver ctrlr to base pref ctrlr. am: 542644e83f
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/20736682 Change-Id: Ic6f282087660ede4a0b1fd38378c0c5adc58bc3f Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
@@ -146,7 +146,8 @@
|
|||||||
android:key="screensaver"
|
android:key="screensaver"
|
||||||
android:title="@string/screensaver_settings_title"
|
android:title="@string/screensaver_settings_title"
|
||||||
android:fragment="com.android.settings.dream.DreamSettings"
|
android:fragment="com.android.settings.dream.DreamSettings"
|
||||||
settings:keywords="@string/keywords_screensaver"/>
|
settings:keywords="@string/keywords_screensaver"
|
||||||
|
settings:controller="com.android.settings.display.ScreenSaverPreferenceController"/>
|
||||||
|
|
||||||
<SwitchPreference
|
<SwitchPreference
|
||||||
android:key="camera_gesture"
|
android:key="camera_gesture"
|
||||||
|
@@ -24,7 +24,6 @@ import com.android.settings.dashboard.DashboardFragment;
|
|||||||
import com.android.settings.display.BrightnessLevelPreferenceController;
|
import com.android.settings.display.BrightnessLevelPreferenceController;
|
||||||
import com.android.settings.display.CameraGesturePreferenceController;
|
import com.android.settings.display.CameraGesturePreferenceController;
|
||||||
import com.android.settings.display.LiftToWakePreferenceController;
|
import com.android.settings.display.LiftToWakePreferenceController;
|
||||||
import com.android.settings.display.ScreenSaverPreferenceController;
|
|
||||||
import com.android.settings.display.ShowOperatorNamePreferenceController;
|
import com.android.settings.display.ShowOperatorNamePreferenceController;
|
||||||
import com.android.settings.display.TapToWakePreferenceController;
|
import com.android.settings.display.TapToWakePreferenceController;
|
||||||
import com.android.settings.display.ThemePreferenceController;
|
import com.android.settings.display.ThemePreferenceController;
|
||||||
@@ -76,7 +75,6 @@ public class DisplaySettings extends DashboardFragment {
|
|||||||
final List<AbstractPreferenceController> controllers = new ArrayList<>();
|
final List<AbstractPreferenceController> controllers = new ArrayList<>();
|
||||||
controllers.add(new CameraGesturePreferenceController(context));
|
controllers.add(new CameraGesturePreferenceController(context));
|
||||||
controllers.add(new LiftToWakePreferenceController(context));
|
controllers.add(new LiftToWakePreferenceController(context));
|
||||||
controllers.add(new ScreenSaverPreferenceController(context));
|
|
||||||
controllers.add(new TapToWakePreferenceController(context));
|
controllers.add(new TapToWakePreferenceController(context));
|
||||||
controllers.add(new VrDisplayPreferenceController(context));
|
controllers.add(new VrDisplayPreferenceController(context));
|
||||||
controllers.add(new ShowOperatorNamePreferenceController(context));
|
controllers.add(new ShowOperatorNamePreferenceController(context));
|
||||||
|
@@ -16,47 +16,41 @@ package com.android.settings.display;
|
|||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
import android.os.UserManager;
|
import android.os.UserManager;
|
||||||
|
|
||||||
import androidx.preference.Preference;
|
|
||||||
|
|
||||||
import com.android.settings.R;
|
import com.android.settings.R;
|
||||||
|
import com.android.settings.core.BasePreferenceController;
|
||||||
import com.android.settings.core.PreferenceControllerMixin;
|
import com.android.settings.core.PreferenceControllerMixin;
|
||||||
import com.android.settings.dream.DreamSettings;
|
import com.android.settings.dream.DreamSettings;
|
||||||
import com.android.settingslib.core.AbstractPreferenceController;
|
|
||||||
|
|
||||||
public class ScreenSaverPreferenceController extends AbstractPreferenceController implements
|
public class ScreenSaverPreferenceController extends BasePreferenceController implements
|
||||||
PreferenceControllerMixin {
|
PreferenceControllerMixin {
|
||||||
|
|
||||||
private static final String KEY_SCREEN_SAVER = "screensaver";
|
|
||||||
private final boolean mDreamsDisabledByAmbientModeSuppression;
|
private final boolean mDreamsDisabledByAmbientModeSuppression;
|
||||||
|
|
||||||
public ScreenSaverPreferenceController(Context context) {
|
public ScreenSaverPreferenceController(Context context, String preferenceKey) {
|
||||||
super(context);
|
super(context, preferenceKey);
|
||||||
|
|
||||||
mDreamsDisabledByAmbientModeSuppression = context.getResources().getBoolean(
|
mDreamsDisabledByAmbientModeSuppression = context.getResources().getBoolean(
|
||||||
com.android.internal.R.bool.config_dreamsDisabledByAmbientModeSuppressionConfig);
|
com.android.internal.R.bool.config_dreamsDisabledByAmbientModeSuppressionConfig);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean isAvailable() {
|
public int getAvailabilityStatus() {
|
||||||
final boolean dreamsSupported = mContext.getResources().getBoolean(
|
final boolean dreamsSupported = mContext.getResources().getBoolean(
|
||||||
com.android.internal.R.bool.config_dreamsSupported);
|
com.android.internal.R.bool.config_dreamsSupported);
|
||||||
final boolean dreamsOnlyEnabledForDockUser = mContext.getResources().getBoolean(
|
final boolean dreamsOnlyEnabledForDockUser = mContext.getResources().getBoolean(
|
||||||
com.android.internal.R.bool.config_dreamsOnlyEnabledForDockUser);
|
com.android.internal.R.bool.config_dreamsOnlyEnabledForDockUser);
|
||||||
// TODO(b/257333623): Allow the Dock User to be non-SystemUser user in HSUM.
|
// TODO(b/257333623): Allow the Dock User to be non-SystemUser user in HSUM.
|
||||||
return dreamsSupported && (!dreamsOnlyEnabledForDockUser || isSystemUser());
|
return (dreamsSupported && (!dreamsOnlyEnabledForDockUser || isSystemUser()))
|
||||||
|
? AVAILABLE : UNSUPPORTED_ON_DEVICE;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String getPreferenceKey() {
|
public CharSequence getSummary() {
|
||||||
return KEY_SCREEN_SAVER;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void updateState(Preference preference) {
|
|
||||||
if (mDreamsDisabledByAmbientModeSuppression
|
if (mDreamsDisabledByAmbientModeSuppression
|
||||||
&& AmbientDisplayAlwaysOnPreferenceController.isAodSuppressedByBedtime(mContext)) {
|
&& AmbientDisplayAlwaysOnPreferenceController.isAodSuppressedByBedtime(mContext)) {
|
||||||
preference.setSummary(R.string.screensaver_settings_when_to_dream_bedtime);
|
return mContext.getString(R.string.screensaver_settings_when_to_dream_bedtime);
|
||||||
} else {
|
} else {
|
||||||
preference.setSummary(DreamSettings.getSummaryTextWithDreamName(mContext));
|
return DreamSettings.getSummaryTextWithDreamName(mContext);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -45,11 +45,13 @@ public class ScreenSaverPreferenceControllerTest {
|
|||||||
|
|
||||||
private ScreenSaverPreferenceController mController;
|
private ScreenSaverPreferenceController mController;
|
||||||
|
|
||||||
|
private final String mPrefKey = "test_screensaver";
|
||||||
|
|
||||||
@Before
|
@Before
|
||||||
public void setup() {
|
public void setup() {
|
||||||
MockitoAnnotations.initMocks(this);
|
MockitoAnnotations.initMocks(this);
|
||||||
|
|
||||||
mController = new ScreenSaverPreferenceController(mContext);
|
mController = new ScreenSaverPreferenceController(mContext, mPrefKey);
|
||||||
|
|
||||||
when(mContext.getResources()).thenReturn(mResources);
|
when(mContext.getResources()).thenReturn(mResources);
|
||||||
when(mContext.getSystemService(UserManager.class)).thenReturn(mUserManager);
|
when(mContext.getSystemService(UserManager.class)).thenReturn(mUserManager);
|
||||||
|
Reference in New Issue
Block a user