Merge "Disable lockscreen shortcuts when the user enters lockdown mode" into udc-dev
This commit is contained in:
committed by
Android (Google) Code Review
commit
38398830ae
@@ -35,6 +35,7 @@ import com.android.systemui.dock.retrieveIsDocked
|
|||||||
import com.android.systemui.flags.FeatureFlags
|
import com.android.systemui.flags.FeatureFlags
|
||||||
import com.android.systemui.flags.Flags
|
import com.android.systemui.flags.Flags
|
||||||
import com.android.systemui.keyguard.data.quickaffordance.KeyguardQuickAffordanceConfig
|
import com.android.systemui.keyguard.data.quickaffordance.KeyguardQuickAffordanceConfig
|
||||||
|
import com.android.systemui.keyguard.data.repository.BiometricSettingsRepository
|
||||||
import com.android.systemui.keyguard.data.repository.KeyguardQuickAffordanceRepository
|
import com.android.systemui.keyguard.data.repository.KeyguardQuickAffordanceRepository
|
||||||
import com.android.systemui.keyguard.domain.model.KeyguardQuickAffordanceModel
|
import com.android.systemui.keyguard.domain.model.KeyguardQuickAffordanceModel
|
||||||
import com.android.systemui.keyguard.domain.quickaffordance.KeyguardQuickAffordanceRegistry
|
import com.android.systemui.keyguard.domain.quickaffordance.KeyguardQuickAffordanceRegistry
|
||||||
@@ -77,6 +78,7 @@ constructor(
|
|||||||
private val logger: KeyguardQuickAffordancesMetricsLogger,
|
private val logger: KeyguardQuickAffordancesMetricsLogger,
|
||||||
private val devicePolicyManager: DevicePolicyManager,
|
private val devicePolicyManager: DevicePolicyManager,
|
||||||
private val dockManager: DockManager,
|
private val dockManager: DockManager,
|
||||||
|
private val biometricSettingsRepository: BiometricSettingsRepository,
|
||||||
@Background private val backgroundDispatcher: CoroutineDispatcher,
|
@Background private val backgroundDispatcher: CoroutineDispatcher,
|
||||||
@Application private val appContext: Context,
|
@Application private val appContext: Context,
|
||||||
) {
|
) {
|
||||||
@@ -107,9 +109,10 @@ constructor(
|
|||||||
quickAffordanceAlwaysVisible(position),
|
quickAffordanceAlwaysVisible(position),
|
||||||
keyguardInteractor.isDozing,
|
keyguardInteractor.isDozing,
|
||||||
keyguardInteractor.isKeyguardShowing,
|
keyguardInteractor.isKeyguardShowing,
|
||||||
keyguardInteractor.isQuickSettingsVisible
|
keyguardInteractor.isQuickSettingsVisible,
|
||||||
) { affordance, isDozing, isKeyguardShowing, isQuickSettingsVisible ->
|
biometricSettingsRepository.isCurrentUserInLockdown,
|
||||||
if (!isDozing && isKeyguardShowing && !isQuickSettingsVisible) {
|
) { affordance, isDozing, isKeyguardShowing, isQuickSettingsVisible, isUserInLockdown ->
|
||||||
|
if (!isDozing && isKeyguardShowing && !isQuickSettingsVisible && !isUserInLockdown) {
|
||||||
affordance
|
affordance
|
||||||
} else {
|
} else {
|
||||||
KeyguardQuickAffordanceModel.Hidden
|
KeyguardQuickAffordanceModel.Hidden
|
||||||
|
|||||||
@@ -42,6 +42,7 @@ import com.android.systemui.keyguard.data.quickaffordance.FakeKeyguardQuickAffor
|
|||||||
import com.android.systemui.keyguard.data.quickaffordance.KeyguardQuickAffordanceLegacySettingSyncer
|
import com.android.systemui.keyguard.data.quickaffordance.KeyguardQuickAffordanceLegacySettingSyncer
|
||||||
import com.android.systemui.keyguard.data.quickaffordance.KeyguardQuickAffordanceLocalUserSelectionManager
|
import com.android.systemui.keyguard.data.quickaffordance.KeyguardQuickAffordanceLocalUserSelectionManager
|
||||||
import com.android.systemui.keyguard.data.quickaffordance.KeyguardQuickAffordanceRemoteUserSelectionManager
|
import com.android.systemui.keyguard.data.quickaffordance.KeyguardQuickAffordanceRemoteUserSelectionManager
|
||||||
|
import com.android.systemui.keyguard.data.repository.FakeBiometricSettingsRepository
|
||||||
import com.android.systemui.keyguard.data.repository.FakeKeyguardBouncerRepository
|
import com.android.systemui.keyguard.data.repository.FakeKeyguardBouncerRepository
|
||||||
import com.android.systemui.keyguard.data.repository.FakeKeyguardRepository
|
import com.android.systemui.keyguard.data.repository.FakeKeyguardRepository
|
||||||
import com.android.systemui.keyguard.data.repository.KeyguardQuickAffordanceRepository
|
import com.android.systemui.keyguard.data.repository.KeyguardQuickAffordanceRepository
|
||||||
@@ -98,6 +99,7 @@ class CustomizationProviderTest : SysuiTestCase() {
|
|||||||
@Mock private lateinit var logger: KeyguardQuickAffordancesMetricsLogger
|
@Mock private lateinit var logger: KeyguardQuickAffordancesMetricsLogger
|
||||||
|
|
||||||
private lateinit var dockManager: DockManagerFake
|
private lateinit var dockManager: DockManagerFake
|
||||||
|
private lateinit var biometricSettingsRepository: FakeBiometricSettingsRepository
|
||||||
|
|
||||||
private lateinit var underTest: CustomizationProvider
|
private lateinit var underTest: CustomizationProvider
|
||||||
private lateinit var testScope: TestScope
|
private lateinit var testScope: TestScope
|
||||||
@@ -111,6 +113,7 @@ class CustomizationProviderTest : SysuiTestCase() {
|
|||||||
whenever(backgroundHandler.looper).thenReturn(TestableLooper.get(this).looper)
|
whenever(backgroundHandler.looper).thenReturn(TestableLooper.get(this).looper)
|
||||||
|
|
||||||
dockManager = DockManagerFake()
|
dockManager = DockManagerFake()
|
||||||
|
biometricSettingsRepository = FakeBiometricSettingsRepository()
|
||||||
|
|
||||||
underTest = CustomizationProvider()
|
underTest = CustomizationProvider()
|
||||||
val testDispatcher = UnconfinedTestDispatcher()
|
val testDispatcher = UnconfinedTestDispatcher()
|
||||||
@@ -197,6 +200,7 @@ class CustomizationProviderTest : SysuiTestCase() {
|
|||||||
logger = logger,
|
logger = logger,
|
||||||
devicePolicyManager = devicePolicyManager,
|
devicePolicyManager = devicePolicyManager,
|
||||||
dockManager = dockManager,
|
dockManager = dockManager,
|
||||||
|
biometricSettingsRepository = biometricSettingsRepository,
|
||||||
backgroundDispatcher = testDispatcher,
|
backgroundDispatcher = testDispatcher,
|
||||||
appContext = mContext,
|
appContext = mContext,
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -38,6 +38,7 @@ import com.android.systemui.keyguard.data.quickaffordance.KeyguardQuickAffordanc
|
|||||||
import com.android.systemui.keyguard.data.quickaffordance.KeyguardQuickAffordanceLegacySettingSyncer
|
import com.android.systemui.keyguard.data.quickaffordance.KeyguardQuickAffordanceLegacySettingSyncer
|
||||||
import com.android.systemui.keyguard.data.quickaffordance.KeyguardQuickAffordanceLocalUserSelectionManager
|
import com.android.systemui.keyguard.data.quickaffordance.KeyguardQuickAffordanceLocalUserSelectionManager
|
||||||
import com.android.systemui.keyguard.data.quickaffordance.KeyguardQuickAffordanceRemoteUserSelectionManager
|
import com.android.systemui.keyguard.data.quickaffordance.KeyguardQuickAffordanceRemoteUserSelectionManager
|
||||||
|
import com.android.systemui.keyguard.data.repository.FakeBiometricSettingsRepository
|
||||||
import com.android.systemui.keyguard.data.repository.FakeKeyguardBouncerRepository
|
import com.android.systemui.keyguard.data.repository.FakeKeyguardBouncerRepository
|
||||||
import com.android.systemui.keyguard.data.repository.FakeKeyguardRepository
|
import com.android.systemui.keyguard.data.repository.FakeKeyguardRepository
|
||||||
import com.android.systemui.keyguard.data.repository.KeyguardQuickAffordanceRepository
|
import com.android.systemui.keyguard.data.repository.KeyguardQuickAffordanceRepository
|
||||||
@@ -239,6 +240,7 @@ class KeyguardQuickAffordanceInteractorParameterizedTest : SysuiTestCase() {
|
|||||||
@JvmField @Parameter(4) var startActivity: Boolean = false
|
@JvmField @Parameter(4) var startActivity: Boolean = false
|
||||||
private lateinit var homeControls: FakeKeyguardQuickAffordanceConfig
|
private lateinit var homeControls: FakeKeyguardQuickAffordanceConfig
|
||||||
private lateinit var dockManager: DockManagerFake
|
private lateinit var dockManager: DockManagerFake
|
||||||
|
private lateinit var biometricSettingsRepository: FakeBiometricSettingsRepository
|
||||||
private lateinit var userTracker: UserTracker
|
private lateinit var userTracker: UserTracker
|
||||||
|
|
||||||
@Before
|
@Before
|
||||||
@@ -250,6 +252,7 @@ class KeyguardQuickAffordanceInteractorParameterizedTest : SysuiTestCase() {
|
|||||||
homeControls =
|
homeControls =
|
||||||
FakeKeyguardQuickAffordanceConfig(BuiltInKeyguardQuickAffordanceKeys.HOME_CONTROLS)
|
FakeKeyguardQuickAffordanceConfig(BuiltInKeyguardQuickAffordanceKeys.HOME_CONTROLS)
|
||||||
dockManager = DockManagerFake()
|
dockManager = DockManagerFake()
|
||||||
|
biometricSettingsRepository = FakeBiometricSettingsRepository()
|
||||||
val quickAccessWallet =
|
val quickAccessWallet =
|
||||||
FakeKeyguardQuickAffordanceConfig(
|
FakeKeyguardQuickAffordanceConfig(
|
||||||
BuiltInKeyguardQuickAffordanceKeys.QUICK_ACCESS_WALLET
|
BuiltInKeyguardQuickAffordanceKeys.QUICK_ACCESS_WALLET
|
||||||
@@ -339,6 +342,7 @@ class KeyguardQuickAffordanceInteractorParameterizedTest : SysuiTestCase() {
|
|||||||
logger = logger,
|
logger = logger,
|
||||||
devicePolicyManager = devicePolicyManager,
|
devicePolicyManager = devicePolicyManager,
|
||||||
dockManager = dockManager,
|
dockManager = dockManager,
|
||||||
|
biometricSettingsRepository = biometricSettingsRepository,
|
||||||
backgroundDispatcher = testDispatcher,
|
backgroundDispatcher = testDispatcher,
|
||||||
appContext = mContext,
|
appContext = mContext,
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -40,6 +40,7 @@ import com.android.systemui.keyguard.data.quickaffordance.KeyguardQuickAffordanc
|
|||||||
import com.android.systemui.keyguard.data.quickaffordance.KeyguardQuickAffordanceLegacySettingSyncer
|
import com.android.systemui.keyguard.data.quickaffordance.KeyguardQuickAffordanceLegacySettingSyncer
|
||||||
import com.android.systemui.keyguard.data.quickaffordance.KeyguardQuickAffordanceLocalUserSelectionManager
|
import com.android.systemui.keyguard.data.quickaffordance.KeyguardQuickAffordanceLocalUserSelectionManager
|
||||||
import com.android.systemui.keyguard.data.quickaffordance.KeyguardQuickAffordanceRemoteUserSelectionManager
|
import com.android.systemui.keyguard.data.quickaffordance.KeyguardQuickAffordanceRemoteUserSelectionManager
|
||||||
|
import com.android.systemui.keyguard.data.repository.FakeBiometricSettingsRepository
|
||||||
import com.android.systemui.keyguard.data.repository.FakeKeyguardBouncerRepository
|
import com.android.systemui.keyguard.data.repository.FakeKeyguardBouncerRepository
|
||||||
import com.android.systemui.keyguard.data.repository.FakeKeyguardRepository
|
import com.android.systemui.keyguard.data.repository.FakeKeyguardRepository
|
||||||
import com.android.systemui.keyguard.data.repository.KeyguardQuickAffordanceRepository
|
import com.android.systemui.keyguard.data.repository.KeyguardQuickAffordanceRepository
|
||||||
@@ -97,6 +98,7 @@ class KeyguardQuickAffordanceInteractorTest : SysuiTestCase() {
|
|||||||
private lateinit var qrCodeScanner: FakeKeyguardQuickAffordanceConfig
|
private lateinit var qrCodeScanner: FakeKeyguardQuickAffordanceConfig
|
||||||
private lateinit var featureFlags: FakeFeatureFlags
|
private lateinit var featureFlags: FakeFeatureFlags
|
||||||
private lateinit var dockManager: DockManagerFake
|
private lateinit var dockManager: DockManagerFake
|
||||||
|
private lateinit var biometricSettingsRepository: FakeBiometricSettingsRepository
|
||||||
|
|
||||||
@Before
|
@Before
|
||||||
fun setUp() {
|
fun setUp() {
|
||||||
@@ -119,6 +121,7 @@ class KeyguardQuickAffordanceInteractorTest : SysuiTestCase() {
|
|||||||
testScope = TestScope(testDispatcher)
|
testScope = TestScope(testDispatcher)
|
||||||
|
|
||||||
dockManager = DockManagerFake()
|
dockManager = DockManagerFake()
|
||||||
|
biometricSettingsRepository = FakeBiometricSettingsRepository()
|
||||||
|
|
||||||
val localUserSelectionManager =
|
val localUserSelectionManager =
|
||||||
KeyguardQuickAffordanceLocalUserSelectionManager(
|
KeyguardQuickAffordanceLocalUserSelectionManager(
|
||||||
@@ -201,6 +204,7 @@ class KeyguardQuickAffordanceInteractorTest : SysuiTestCase() {
|
|||||||
logger = logger,
|
logger = logger,
|
||||||
devicePolicyManager = devicePolicyManager,
|
devicePolicyManager = devicePolicyManager,
|
||||||
dockManager = dockManager,
|
dockManager = dockManager,
|
||||||
|
biometricSettingsRepository = biometricSettingsRepository,
|
||||||
backgroundDispatcher = testDispatcher,
|
backgroundDispatcher = testDispatcher,
|
||||||
appContext = context,
|
appContext = context,
|
||||||
)
|
)
|
||||||
@@ -313,6 +317,24 @@ class KeyguardQuickAffordanceInteractorTest : SysuiTestCase() {
|
|||||||
assertThat(collectedValue()).isEqualTo(KeyguardQuickAffordanceModel.Hidden)
|
assertThat(collectedValue()).isEqualTo(KeyguardQuickAffordanceModel.Hidden)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
fun quickAffordance_hiddenWhenUserIsInLockdownMode() =
|
||||||
|
testScope.runTest {
|
||||||
|
biometricSettingsRepository.setIsUserInLockdown(true)
|
||||||
|
quickAccessWallet.setState(
|
||||||
|
KeyguardQuickAffordanceConfig.LockScreenState.Visible(
|
||||||
|
icon = ICON,
|
||||||
|
)
|
||||||
|
)
|
||||||
|
|
||||||
|
val collectedValue by
|
||||||
|
collectLastValue(
|
||||||
|
underTest.quickAffordance(KeyguardQuickAffordancePosition.BOTTOM_END)
|
||||||
|
)
|
||||||
|
|
||||||
|
assertThat(collectedValue).isEqualTo(KeyguardQuickAffordanceModel.Hidden)
|
||||||
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
fun quickAffordance_bottomStartAffordanceHiddenWhileDozing() =
|
fun quickAffordance_bottomStartAffordanceHiddenWhileDozing() =
|
||||||
testScope.runTest {
|
testScope.runTest {
|
||||||
|
|||||||
@@ -39,6 +39,7 @@ import com.android.systemui.keyguard.data.quickaffordance.KeyguardQuickAffordanc
|
|||||||
import com.android.systemui.keyguard.data.quickaffordance.KeyguardQuickAffordanceLegacySettingSyncer
|
import com.android.systemui.keyguard.data.quickaffordance.KeyguardQuickAffordanceLegacySettingSyncer
|
||||||
import com.android.systemui.keyguard.data.quickaffordance.KeyguardQuickAffordanceLocalUserSelectionManager
|
import com.android.systemui.keyguard.data.quickaffordance.KeyguardQuickAffordanceLocalUserSelectionManager
|
||||||
import com.android.systemui.keyguard.data.quickaffordance.KeyguardQuickAffordanceRemoteUserSelectionManager
|
import com.android.systemui.keyguard.data.quickaffordance.KeyguardQuickAffordanceRemoteUserSelectionManager
|
||||||
|
import com.android.systemui.keyguard.data.repository.FakeBiometricSettingsRepository
|
||||||
import com.android.systemui.keyguard.data.repository.FakeKeyguardBouncerRepository
|
import com.android.systemui.keyguard.data.repository.FakeKeyguardBouncerRepository
|
||||||
import com.android.systemui.keyguard.data.repository.FakeKeyguardRepository
|
import com.android.systemui.keyguard.data.repository.FakeKeyguardRepository
|
||||||
import com.android.systemui.keyguard.data.repository.FakeKeyguardTransitionRepository
|
import com.android.systemui.keyguard.data.repository.FakeKeyguardTransitionRepository
|
||||||
@@ -110,6 +111,7 @@ class KeyguardBottomAreaViewModelTest : SysuiTestCase() {
|
|||||||
private lateinit var quickAccessWalletAffordanceConfig: FakeKeyguardQuickAffordanceConfig
|
private lateinit var quickAccessWalletAffordanceConfig: FakeKeyguardQuickAffordanceConfig
|
||||||
private lateinit var qrCodeScannerAffordanceConfig: FakeKeyguardQuickAffordanceConfig
|
private lateinit var qrCodeScannerAffordanceConfig: FakeKeyguardQuickAffordanceConfig
|
||||||
private lateinit var dockManager: DockManagerFake
|
private lateinit var dockManager: DockManagerFake
|
||||||
|
private lateinit var biometricSettingsRepository: FakeBiometricSettingsRepository
|
||||||
|
|
||||||
@Before
|
@Before
|
||||||
fun setUp() {
|
fun setUp() {
|
||||||
@@ -126,6 +128,7 @@ class KeyguardBottomAreaViewModelTest : SysuiTestCase() {
|
|||||||
qrCodeScannerAffordanceConfig =
|
qrCodeScannerAffordanceConfig =
|
||||||
FakeKeyguardQuickAffordanceConfig(BuiltInKeyguardQuickAffordanceKeys.QR_CODE_SCANNER)
|
FakeKeyguardQuickAffordanceConfig(BuiltInKeyguardQuickAffordanceKeys.QR_CODE_SCANNER)
|
||||||
dockManager = DockManagerFake()
|
dockManager = DockManagerFake()
|
||||||
|
biometricSettingsRepository = FakeBiometricSettingsRepository()
|
||||||
registry =
|
registry =
|
||||||
FakeKeyguardQuickAffordanceRegistry(
|
FakeKeyguardQuickAffordanceRegistry(
|
||||||
mapOf(
|
mapOf(
|
||||||
@@ -240,6 +243,7 @@ class KeyguardBottomAreaViewModelTest : SysuiTestCase() {
|
|||||||
logger = logger,
|
logger = logger,
|
||||||
devicePolicyManager = devicePolicyManager,
|
devicePolicyManager = devicePolicyManager,
|
||||||
dockManager = dockManager,
|
dockManager = dockManager,
|
||||||
|
biometricSettingsRepository = biometricSettingsRepository,
|
||||||
backgroundDispatcher = testDispatcher,
|
backgroundDispatcher = testDispatcher,
|
||||||
appContext = mContext,
|
appContext = mContext,
|
||||||
),
|
),
|
||||||
|
|||||||
Reference in New Issue
Block a user