Respect KEYGUARD_DISABLE_SHORTCUTS_ALL
When DevicePolicyManager#getKeyguardDisabledFeatures includes a set bit for the KEYGUARD_DISABLE_SHORTCUTS_ALL flag, we disable lock screen shortcuts. Fix: 268218507 Flag: customizable_lock_screen_quick_affordances Test: faked the returned value and manually verified that the feature is gone from settings, wallpaper picker, and the lock screen Test: unit test case added Change-Id: I6c8a2d1fd2f891c9cd483d395c8175d6e8361b1b
This commit is contained in:
committed by
Ale Nijamkin
parent
9ab0eed739
commit
4bc95f88aa
@@ -415,8 +415,9 @@ constructor(
|
||||
withContext(backgroundDispatcher) {
|
||||
devicePolicyManager.getKeyguardDisabledFeatures(null, userTracker.userId)
|
||||
}
|
||||
val flagsToCheck = DevicePolicyManager.KEYGUARD_DISABLE_FEATURES_ALL
|
||||
// TODO(b/268218507): "or" with DevicePolicyManager.KEYGUARD_DISABLE_SHORTCUTS_ALL
|
||||
val flagsToCheck =
|
||||
DevicePolicyManager.KEYGUARD_DISABLE_FEATURES_ALL or
|
||||
DevicePolicyManager.KEYGUARD_DISABLE_SHORTCUTS_ALL
|
||||
return flagsToCheck and flags != 0
|
||||
}
|
||||
|
||||
|
||||
@@ -243,7 +243,7 @@ class KeyguardQuickAffordanceInteractorTest : SysuiTestCase() {
|
||||
}
|
||||
|
||||
@Test
|
||||
fun `quickAffordance - bottom end affordance is hidden when disabled by device policy`() =
|
||||
fun `quickAffordance - hidden when all features are disabled by device policy`() =
|
||||
testScope.runTest {
|
||||
whenever(devicePolicyManager.getKeyguardDisabledFeatures(null, userTracker.userId))
|
||||
.thenReturn(DevicePolicyManager.KEYGUARD_DISABLE_FEATURES_ALL)
|
||||
@@ -261,6 +261,25 @@ class KeyguardQuickAffordanceInteractorTest : SysuiTestCase() {
|
||||
assertThat(collectedValue).isInstanceOf(KeyguardQuickAffordanceModel.Hidden::class.java)
|
||||
}
|
||||
|
||||
@Test
|
||||
fun `quickAffordance - hidden when shortcuts feature is disabled by device policy`() =
|
||||
testScope.runTest {
|
||||
whenever(devicePolicyManager.getKeyguardDisabledFeatures(null, userTracker.userId))
|
||||
.thenReturn(DevicePolicyManager.KEYGUARD_DISABLE_SHORTCUTS_ALL)
|
||||
quickAccessWallet.setState(
|
||||
KeyguardQuickAffordanceConfig.LockScreenState.Visible(
|
||||
icon = ICON,
|
||||
)
|
||||
)
|
||||
|
||||
val collectedValue by
|
||||
collectLastValue(
|
||||
underTest.quickAffordance(KeyguardQuickAffordancePosition.BOTTOM_END)
|
||||
)
|
||||
|
||||
assertThat(collectedValue).isInstanceOf(KeyguardQuickAffordanceModel.Hidden::class.java)
|
||||
}
|
||||
|
||||
@Test
|
||||
fun `quickAffordance - bottom start affordance hidden while dozing`() =
|
||||
testScope.runTest {
|
||||
|
||||
Reference in New Issue
Block a user