diff options
author | 2025-02-13 14:14:13 -0800 | |
---|---|---|
committer | 2025-02-14 12:16:28 -0500 | |
commit | 38a9eca9d4ceca8de937c82b753e93bb0de9e433 (patch) | |
tree | 11a454e58280ad833b52adaa86c9c8c8dff0a13a | |
parent | 828c910e20df07365294b49c57ff0994cd94a288 (diff) |
Change when to dream ordering
If both charging and posturing are enabled, charging now takes priority.
Bug: 396458606
Test: atest DreamBackendTest
Flag: EXEMPT bugfix
Change-Id: I0ecdbe9c4c747a274a8cd627b62d4888a6d140f0
-rw-r--r-- | packages/SettingsLib/src/com/android/settingslib/dream/DreamBackend.java | 6 | ||||
-rw-r--r-- | packages/SettingsLib/tests/robotests/src/com/android/settingslib/dream/DreamBackendTest.java | 55 |
2 files changed, 58 insertions, 3 deletions
diff --git a/packages/SettingsLib/src/com/android/settingslib/dream/DreamBackend.java b/packages/SettingsLib/src/com/android/settingslib/dream/DreamBackend.java index 51259e2f311d..e7887ed26cc3 100644 --- a/packages/SettingsLib/src/com/android/settingslib/dream/DreamBackend.java +++ b/packages/SettingsLib/src/com/android/settingslib/dream/DreamBackend.java @@ -295,9 +295,9 @@ public class DreamBackend { @WhenToDream public int getWhenToDreamSetting() { return isActivatedOnDock() && isActivatedOnSleep() ? WHILE_CHARGING_OR_DOCKED - : isActivatedOnDock() ? WHILE_DOCKED - : isActivatedOnPostured() ? WHILE_POSTURED - : isActivatedOnSleep() ? WHILE_CHARGING + : isActivatedOnSleep() ? WHILE_CHARGING + : isActivatedOnDock() ? WHILE_DOCKED + : isActivatedOnPostured() ? WHILE_POSTURED : NEVER; } diff --git a/packages/SettingsLib/tests/robotests/src/com/android/settingslib/dream/DreamBackendTest.java b/packages/SettingsLib/tests/robotests/src/com/android/settingslib/dream/DreamBackendTest.java index 00ae96cfab50..c21eb0ce777a 100644 --- a/packages/SettingsLib/tests/robotests/src/com/android/settingslib/dream/DreamBackendTest.java +++ b/packages/SettingsLib/tests/robotests/src/com/android/settingslib/dream/DreamBackendTest.java @@ -16,6 +16,8 @@ package com.android.settingslib.dream; +import static android.service.dreams.Flags.FLAG_ALLOW_DREAM_WHEN_POSTURED; + import static com.android.settingslib.dream.DreamBackend.COMPLICATION_TYPE_DATE; import static com.android.settingslib.dream.DreamBackend.COMPLICATION_TYPE_HOME_CONTROLS; import static com.android.settingslib.dream.DreamBackend.COMPLICATION_TYPE_TIME; @@ -28,6 +30,7 @@ import static org.mockito.Mockito.when; import android.content.ContentResolver; import android.content.Context; import android.content.res.Resources; +import android.platform.test.annotations.EnableFlags; import android.provider.Settings; import org.junit.After; @@ -173,6 +176,58 @@ public final class DreamBackendTest { .containsExactlyElementsIn(enabledComplications); } + @Test + @EnableFlags(FLAG_ALLOW_DREAM_WHEN_POSTURED) + public void testChargingAndPosturedBothEnabled() { + Settings.Secure.putInt( + mContext.getContentResolver(), + Settings.Secure.SCREENSAVER_ACTIVATE_ON_SLEEP, + 1 + ); + Settings.Secure.putInt( + mContext.getContentResolver(), + Settings.Secure.SCREENSAVER_ACTIVATE_ON_POSTURED, + 1 + ); + + assertThat(mBackend.getWhenToDreamSetting()).isEqualTo(DreamBackend.WHILE_CHARGING); + } + + @Test + public void testChargingAndDockedBothEnabled() { + Settings.Secure.putInt( + mContext.getContentResolver(), + Settings.Secure.SCREENSAVER_ACTIVATE_ON_SLEEP, + 1 + ); + Settings.Secure.putInt( + mContext.getContentResolver(), + Settings.Secure.SCREENSAVER_ACTIVATE_ON_DOCK, + 1 + ); + + assertThat(mBackend.getWhenToDreamSetting()).isEqualTo( + DreamBackend.WHILE_CHARGING_OR_DOCKED); + } + + @Test + @EnableFlags(FLAG_ALLOW_DREAM_WHEN_POSTURED) + public void testPosturedAndDockedBothEnabled() { + Settings.Secure.putInt( + mContext.getContentResolver(), + Settings.Secure.SCREENSAVER_ACTIVATE_ON_POSTURED, + 1 + ); + Settings.Secure.putInt( + mContext.getContentResolver(), + Settings.Secure.SCREENSAVER_ACTIVATE_ON_DOCK, + 1 + ); + + assertThat(mBackend.getWhenToDreamSetting()).isEqualTo( + DreamBackend.WHILE_DOCKED); + } + private void setControlsEnabledOnLockscreen(boolean enabled) { Settings.Secure.putInt( mContext.getContentResolver(), |