Add posturing dream trigger to Settings UI

Adds ability for users to select posturing as the trigger for when
dreams will be shown.

Bug: 383208131
Test: locally - mp droid and verified posturing option is displayed in
Settings
Flag: android.service.dreams.allow_dream_when_postured

Change-Id: Iae69b9e488181b1e2af7474e3e9879a92b51274c
This commit is contained in:
Lucas Silva
2025-01-08 14:59:58 -05:00
parent e28dcd02bc
commit 9c4dba40b4
5 changed files with 51 additions and 22 deletions

View File

@@ -59,6 +59,7 @@ public class DreamSettingsTest {
DreamSettings.WHILE_CHARGING_ONLY,
DreamSettings.WHILE_DOCKED_ONLY,
DreamSettings.EITHER_CHARGING_OR_DOCKED,
DreamSettings.WHILE_POSTURED_ONLY,
DreamSettings.NEVER_DREAM
);
@@ -66,7 +67,8 @@ public class DreamSettingsTest {
private static final int[] SETTINGS = {
DreamBackend.WHILE_CHARGING,
DreamBackend.WHILE_DOCKED,
DreamBackend.EITHER,
DreamBackend.WHILE_CHARGING_OR_DOCKED,
DreamBackend.WHILE_POSTURED,
DreamBackend.NEVER,
};
@@ -74,6 +76,7 @@ public class DreamSettingsTest {
R.string.screensaver_settings_summary_sleep,
R.string.screensaver_settings_summary_dock,
R.string.screensaver_settings_summary_either_long,
R.string.screensaver_settings_summary_postured,
R.string.screensaver_settings_summary_never
};
@@ -81,6 +84,7 @@ public class DreamSettingsTest {
R.string.screensaver_settings_summary_sleep,
R.string.screensaver_settings_summary_dock_and_charging,
R.string.screensaver_settings_summary_either_long,
R.string.screensaver_settings_summary_postured_and_charging,
R.string.screensaver_settings_summary_never
};

View File

@@ -80,9 +80,13 @@ public class WhenToDreamPickerTest {
assertThat(mPicker.getDefaultKey())
.isEqualTo(DreamSettings.getKeyFromSetting(DreamBackend.WHILE_DOCKED));
when(mBackend.getWhenToDreamSetting()).thenReturn(DreamBackend.EITHER);
when(mBackend.getWhenToDreamSetting()).thenReturn(DreamBackend.WHILE_CHARGING_OR_DOCKED);
assertThat(mPicker.getDefaultKey())
.isEqualTo(DreamSettings.getKeyFromSetting(DreamBackend.EITHER));
.isEqualTo(DreamSettings.getKeyFromSetting(DreamBackend.WHILE_CHARGING_OR_DOCKED));
when(mBackend.getWhenToDreamSetting()).thenReturn(DreamBackend.WHILE_POSTURED);
assertThat(mPicker.getDefaultKey())
.isEqualTo(DreamSettings.getKeyFromSetting(DreamBackend.WHILE_POSTURED));
when(mBackend.getWhenToDreamSetting()).thenReturn(DreamBackend.NEVER);
assertThat(mPicker.getDefaultKey())
@@ -105,9 +109,16 @@ public class WhenToDreamPickerTest {
@Test
public void setDreamWhileChargingOrDocked() {
final String key = DreamSettings.getKeyFromSetting(DreamBackend.EITHER);
final String key = DreamSettings.getKeyFromSetting(DreamBackend.WHILE_CHARGING_OR_DOCKED);
mPicker.setDefaultKey(key);
verify(mBackend).setWhenToDream(DreamBackend.EITHER);
verify(mBackend).setWhenToDream(DreamBackend.WHILE_CHARGING_OR_DOCKED);
}
@Test
public void setDreamWhilePostured() {
final String key = DreamSettings.getKeyFromSetting(DreamBackend.WHILE_POSTURED);
mPicker.setDefaultKey(key);
verify(mBackend).setWhenToDream(DreamBackend.WHILE_POSTURED);
}
@Test