Merge "[Bouncer] Change message to shared flow." into tm-qpr-dev
This commit is contained in:
@@ -23,7 +23,10 @@ import com.android.systemui.keyguard.shared.model.BouncerShowMessageModel
|
|||||||
import com.android.systemui.keyguard.shared.model.KeyguardBouncerModel
|
import com.android.systemui.keyguard.shared.model.KeyguardBouncerModel
|
||||||
import com.android.systemui.statusbar.phone.KeyguardBouncer
|
import com.android.systemui.statusbar.phone.KeyguardBouncer
|
||||||
import javax.inject.Inject
|
import javax.inject.Inject
|
||||||
|
import kotlinx.coroutines.channels.BufferOverflow
|
||||||
|
import kotlinx.coroutines.flow.MutableSharedFlow
|
||||||
import kotlinx.coroutines.flow.MutableStateFlow
|
import kotlinx.coroutines.flow.MutableStateFlow
|
||||||
|
import kotlinx.coroutines.flow.asSharedFlow
|
||||||
import kotlinx.coroutines.flow.asStateFlow
|
import kotlinx.coroutines.flow.asStateFlow
|
||||||
|
|
||||||
/** Encapsulates app state for the lock screen primary and alternate bouncer. */
|
/** Encapsulates app state for the lock screen primary and alternate bouncer. */
|
||||||
@@ -68,8 +71,12 @@ constructor(
|
|||||||
private val _keyguardAuthenticated = MutableStateFlow<Boolean?>(null)
|
private val _keyguardAuthenticated = MutableStateFlow<Boolean?>(null)
|
||||||
/** Determines if user is already unlocked */
|
/** Determines if user is already unlocked */
|
||||||
val keyguardAuthenticated = _keyguardAuthenticated.asStateFlow()
|
val keyguardAuthenticated = _keyguardAuthenticated.asStateFlow()
|
||||||
private val _showMessage = MutableStateFlow<BouncerShowMessageModel?>(null)
|
private val _showMessage =
|
||||||
val showMessage = _showMessage.asStateFlow()
|
MutableSharedFlow<BouncerShowMessageModel?>(
|
||||||
|
replay = 1,
|
||||||
|
onBufferOverflow = BufferOverflow.DROP_OLDEST
|
||||||
|
)
|
||||||
|
val showMessage = _showMessage.asSharedFlow()
|
||||||
private val _resourceUpdateRequests = MutableStateFlow(false)
|
private val _resourceUpdateRequests = MutableStateFlow(false)
|
||||||
val resourceUpdateRequests = _resourceUpdateRequests.asStateFlow()
|
val resourceUpdateRequests = _resourceUpdateRequests.asStateFlow()
|
||||||
val bouncerPromptReason: Int
|
val bouncerPromptReason: Int
|
||||||
@@ -118,7 +125,7 @@ constructor(
|
|||||||
}
|
}
|
||||||
|
|
||||||
fun setShowMessage(bouncerShowMessageModel: BouncerShowMessageModel?) {
|
fun setShowMessage(bouncerShowMessageModel: BouncerShowMessageModel?) {
|
||||||
_showMessage.value = bouncerShowMessageModel
|
_showMessage.tryEmit(bouncerShowMessageModel)
|
||||||
}
|
}
|
||||||
|
|
||||||
fun setKeyguardAuthenticated(keyguardAuthenticated: Boolean?) {
|
fun setKeyguardAuthenticated(keyguardAuthenticated: Boolean?) {
|
||||||
|
|||||||
@@ -117,7 +117,6 @@ constructor(
|
|||||||
@JvmOverloads
|
@JvmOverloads
|
||||||
fun show(isScrimmed: Boolean) {
|
fun show(isScrimmed: Boolean) {
|
||||||
// Reset some states as we show the bouncer.
|
// Reset some states as we show the bouncer.
|
||||||
repository.setShowMessage(null)
|
|
||||||
repository.setOnScreenTurnedOff(false)
|
repository.setOnScreenTurnedOff(false)
|
||||||
repository.setKeyguardAuthenticated(null)
|
repository.setKeyguardAuthenticated(null)
|
||||||
repository.setPrimaryHide(false)
|
repository.setPrimaryHide(false)
|
||||||
|
|||||||
@@ -93,7 +93,6 @@ class PrimaryBouncerInteractorTest : SysuiTestCase() {
|
|||||||
@Test
|
@Test
|
||||||
fun testShow_isScrimmed() {
|
fun testShow_isScrimmed() {
|
||||||
mPrimaryBouncerInteractor.show(true)
|
mPrimaryBouncerInteractor.show(true)
|
||||||
verify(repository).setShowMessage(null)
|
|
||||||
verify(repository).setOnScreenTurnedOff(false)
|
verify(repository).setOnScreenTurnedOff(false)
|
||||||
verify(repository).setKeyguardAuthenticated(null)
|
verify(repository).setKeyguardAuthenticated(null)
|
||||||
verify(repository).setPrimaryHide(false)
|
verify(repository).setPrimaryHide(false)
|
||||||
|
|||||||
Reference in New Issue
Block a user