Fix power+volume chord fallback when LPP option is disabled

Not all devices will have power+volume chord enabled. Fix current wrong behaviour by falling back to mute chord behaviour only if it was set as the default option in device overlay.

Bug: 187814162
Test: make RunSettingsRoboTests ROBOTEST_FILTER="com.android.settings.gestures.*"
Change-Id: I15c0a71d25738b3b01a20bf22c790d9dcba5d6fd
This commit is contained in:
Jernej Virag
2021-05-11 13:25:02 +00:00
parent 0b43270035
commit fd540cbb0c
2 changed files with 40 additions and 5 deletions

View File

@@ -93,6 +93,25 @@ public class LongPressPowerButtonPreferenceControllerTest {
com.android.internal.R.integer.config_longPressOnPowerBehavior))
.thenReturn(8);
mController.onPreferenceChange(null, false);
assertThat(Settings.Global.getInt(mContext.getContentResolver(),
Settings.Global.POWER_BUTTON_LONG_PRESS, -1)).isEqualTo(8);
assertThat(Settings.Global.getInt(mContext.getContentResolver(),
Settings.Global.KEY_CHORD_POWER_VOLUME_UP, -1)).isEqualTo(
LongPressPowerButtonPreferenceController.KEY_CHORD_POWER_VOLUME_UP_NO_ACTION);
}
@Test
public void preferenceUnchecked_muteChordDefault_longPressPowerSettingSetToDefaultValue() {
// Value out of range chosen deliberately.
when(mResources.getInteger(
com.android.internal.R.integer.config_longPressOnPowerBehavior))
.thenReturn(8);
when(mResources.getInteger(
com.android.internal.R.integer.config_keyChordPowerVolumeUp))
.thenReturn(
LongPressPowerButtonPreferenceController.KEY_CHORD_POWER_VOLUME_UP_MUTE_TOGGLE);
mController.onPreferenceChange(null, false);
assertThat(Settings.Global.getInt(mContext.getContentResolver(),
Settings.Global.POWER_BUTTON_LONG_PRESS, -1)).isEqualTo(8);
@@ -115,9 +134,10 @@ public class LongPressPowerButtonPreferenceControllerTest {
LongPressPowerButtonPreferenceController.LONG_PRESS_POWER_SHUT_OFF);
assertThat(Settings.Global.getInt(mContext.getContentResolver(),
Settings.Global.KEY_CHORD_POWER_VOLUME_UP, -1)).isEqualTo(
LongPressPowerButtonPreferenceController.KEY_CHORD_POWER_VOLUME_UP_MUTE_TOGGLE);
LongPressPowerButtonPreferenceController.KEY_CHORD_POWER_VOLUME_UP_NO_ACTION);
}
@Test
public void preferenceUnchecked_assistDefaultGlobalActionsEnabled_setGlobalActions() {
// Value out of range chosen deliberately.
@@ -136,6 +156,6 @@ public class LongPressPowerButtonPreferenceControllerTest {
LongPressPowerButtonPreferenceController.LONG_PRESS_POWER_GLOBAL_ACTIONS);
assertThat(Settings.Global.getInt(mContext.getContentResolver(),
Settings.Global.KEY_CHORD_POWER_VOLUME_UP, -1)).isEqualTo(
LongPressPowerButtonPreferenceController.KEY_CHORD_POWER_VOLUME_UP_MUTE_TOGGLE);
LongPressPowerButtonPreferenceController.KEY_CHORD_POWER_VOLUME_UP_NO_ACTION);
}
}