Merge "Disable lockscreen shortcuts when the user enters lockdown mode" into udc-dev am: 38398830ae
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/23489366 Change-Id: I1cb6be6e9caa7b914361e92dd629cab34ad27843 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
@@ -35,6 +35,7 @@ import com.android.systemui.dock.retrieveIsDocked
|
||||
import com.android.systemui.flags.FeatureFlags
|
||||
import com.android.systemui.flags.Flags
|
||||
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.domain.model.KeyguardQuickAffordanceModel
|
||||
import com.android.systemui.keyguard.domain.quickaffordance.KeyguardQuickAffordanceRegistry
|
||||
@@ -77,6 +78,7 @@ constructor(
|
||||
private val logger: KeyguardQuickAffordancesMetricsLogger,
|
||||
private val devicePolicyManager: DevicePolicyManager,
|
||||
private val dockManager: DockManager,
|
||||
private val biometricSettingsRepository: BiometricSettingsRepository,
|
||||
@Background private val backgroundDispatcher: CoroutineDispatcher,
|
||||
@Application private val appContext: Context,
|
||||
) {
|
||||
@@ -107,9 +109,10 @@ constructor(
|
||||
quickAffordanceAlwaysVisible(position),
|
||||
keyguardInteractor.isDozing,
|
||||
keyguardInteractor.isKeyguardShowing,
|
||||
keyguardInteractor.isQuickSettingsVisible
|
||||
) { affordance, isDozing, isKeyguardShowing, isQuickSettingsVisible ->
|
||||
if (!isDozing && isKeyguardShowing && !isQuickSettingsVisible) {
|
||||
keyguardInteractor.isQuickSettingsVisible,
|
||||
biometricSettingsRepository.isCurrentUserInLockdown,
|
||||
) { affordance, isDozing, isKeyguardShowing, isQuickSettingsVisible, isUserInLockdown ->
|
||||
if (!isDozing && isKeyguardShowing && !isQuickSettingsVisible && !isUserInLockdown) {
|
||||
affordance
|
||||
} else {
|
||||
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.KeyguardQuickAffordanceLocalUserSelectionManager
|
||||
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.FakeKeyguardRepository
|
||||
import com.android.systemui.keyguard.data.repository.KeyguardQuickAffordanceRepository
|
||||
@@ -98,6 +99,7 @@ class CustomizationProviderTest : SysuiTestCase() {
|
||||
@Mock private lateinit var logger: KeyguardQuickAffordancesMetricsLogger
|
||||
|
||||
private lateinit var dockManager: DockManagerFake
|
||||
private lateinit var biometricSettingsRepository: FakeBiometricSettingsRepository
|
||||
|
||||
private lateinit var underTest: CustomizationProvider
|
||||
private lateinit var testScope: TestScope
|
||||
@@ -111,6 +113,7 @@ class CustomizationProviderTest : SysuiTestCase() {
|
||||
whenever(backgroundHandler.looper).thenReturn(TestableLooper.get(this).looper)
|
||||
|
||||
dockManager = DockManagerFake()
|
||||
biometricSettingsRepository = FakeBiometricSettingsRepository()
|
||||
|
||||
underTest = CustomizationProvider()
|
||||
val testDispatcher = UnconfinedTestDispatcher()
|
||||
@@ -197,6 +200,7 @@ class CustomizationProviderTest : SysuiTestCase() {
|
||||
logger = logger,
|
||||
devicePolicyManager = devicePolicyManager,
|
||||
dockManager = dockManager,
|
||||
biometricSettingsRepository = biometricSettingsRepository,
|
||||
backgroundDispatcher = testDispatcher,
|
||||
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.KeyguardQuickAffordanceLocalUserSelectionManager
|
||||
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.FakeKeyguardRepository
|
||||
import com.android.systemui.keyguard.data.repository.KeyguardQuickAffordanceRepository
|
||||
@@ -239,6 +240,7 @@ class KeyguardQuickAffordanceInteractorParameterizedTest : SysuiTestCase() {
|
||||
@JvmField @Parameter(4) var startActivity: Boolean = false
|
||||
private lateinit var homeControls: FakeKeyguardQuickAffordanceConfig
|
||||
private lateinit var dockManager: DockManagerFake
|
||||
private lateinit var biometricSettingsRepository: FakeBiometricSettingsRepository
|
||||
private lateinit var userTracker: UserTracker
|
||||
|
||||
@Before
|
||||
@@ -250,6 +252,7 @@ class KeyguardQuickAffordanceInteractorParameterizedTest : SysuiTestCase() {
|
||||
homeControls =
|
||||
FakeKeyguardQuickAffordanceConfig(BuiltInKeyguardQuickAffordanceKeys.HOME_CONTROLS)
|
||||
dockManager = DockManagerFake()
|
||||
biometricSettingsRepository = FakeBiometricSettingsRepository()
|
||||
val quickAccessWallet =
|
||||
FakeKeyguardQuickAffordanceConfig(
|
||||
BuiltInKeyguardQuickAffordanceKeys.QUICK_ACCESS_WALLET
|
||||
@@ -339,6 +342,7 @@ class KeyguardQuickAffordanceInteractorParameterizedTest : SysuiTestCase() {
|
||||
logger = logger,
|
||||
devicePolicyManager = devicePolicyManager,
|
||||
dockManager = dockManager,
|
||||
biometricSettingsRepository = biometricSettingsRepository,
|
||||
backgroundDispatcher = testDispatcher,
|
||||
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.KeyguardQuickAffordanceLocalUserSelectionManager
|
||||
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.FakeKeyguardRepository
|
||||
import com.android.systemui.keyguard.data.repository.KeyguardQuickAffordanceRepository
|
||||
@@ -97,6 +98,7 @@ class KeyguardQuickAffordanceInteractorTest : SysuiTestCase() {
|
||||
private lateinit var qrCodeScanner: FakeKeyguardQuickAffordanceConfig
|
||||
private lateinit var featureFlags: FakeFeatureFlags
|
||||
private lateinit var dockManager: DockManagerFake
|
||||
private lateinit var biometricSettingsRepository: FakeBiometricSettingsRepository
|
||||
|
||||
@Before
|
||||
fun setUp() {
|
||||
@@ -119,6 +121,7 @@ class KeyguardQuickAffordanceInteractorTest : SysuiTestCase() {
|
||||
testScope = TestScope(testDispatcher)
|
||||
|
||||
dockManager = DockManagerFake()
|
||||
biometricSettingsRepository = FakeBiometricSettingsRepository()
|
||||
|
||||
val localUserSelectionManager =
|
||||
KeyguardQuickAffordanceLocalUserSelectionManager(
|
||||
@@ -201,6 +204,7 @@ class KeyguardQuickAffordanceInteractorTest : SysuiTestCase() {
|
||||
logger = logger,
|
||||
devicePolicyManager = devicePolicyManager,
|
||||
dockManager = dockManager,
|
||||
biometricSettingsRepository = biometricSettingsRepository,
|
||||
backgroundDispatcher = testDispatcher,
|
||||
appContext = context,
|
||||
)
|
||||
@@ -313,6 +317,24 @@ class KeyguardQuickAffordanceInteractorTest : SysuiTestCase() {
|
||||
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
|
||||
fun quickAffordance_bottomStartAffordanceHiddenWhileDozing() =
|
||||
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.KeyguardQuickAffordanceLocalUserSelectionManager
|
||||
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.FakeKeyguardRepository
|
||||
import com.android.systemui.keyguard.data.repository.FakeKeyguardTransitionRepository
|
||||
@@ -110,6 +111,7 @@ class KeyguardBottomAreaViewModelTest : SysuiTestCase() {
|
||||
private lateinit var quickAccessWalletAffordanceConfig: FakeKeyguardQuickAffordanceConfig
|
||||
private lateinit var qrCodeScannerAffordanceConfig: FakeKeyguardQuickAffordanceConfig
|
||||
private lateinit var dockManager: DockManagerFake
|
||||
private lateinit var biometricSettingsRepository: FakeBiometricSettingsRepository
|
||||
|
||||
@Before
|
||||
fun setUp() {
|
||||
@@ -126,6 +128,7 @@ class KeyguardBottomAreaViewModelTest : SysuiTestCase() {
|
||||
qrCodeScannerAffordanceConfig =
|
||||
FakeKeyguardQuickAffordanceConfig(BuiltInKeyguardQuickAffordanceKeys.QR_CODE_SCANNER)
|
||||
dockManager = DockManagerFake()
|
||||
biometricSettingsRepository = FakeBiometricSettingsRepository()
|
||||
registry =
|
||||
FakeKeyguardQuickAffordanceRegistry(
|
||||
mapOf(
|
||||
@@ -240,6 +243,7 @@ class KeyguardBottomAreaViewModelTest : SysuiTestCase() {
|
||||
logger = logger,
|
||||
devicePolicyManager = devicePolicyManager,
|
||||
dockManager = dockManager,
|
||||
biometricSettingsRepository = biometricSettingsRepository,
|
||||
backgroundDispatcher = testDispatcher,
|
||||
appContext = mContext,
|
||||
),
|
||||
|
||||
Reference in New Issue
Block a user