Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit cdd0be6e authored by Aaron Liu's avatar Aaron Liu Committed by Automerger Merge Worker
Browse files

Merge "[Bouncer] Change message to shared flow." into tm-qpr-dev am: 634848eb am: 3537f774

parents 0c6df6e4 3537f774
Loading
Loading
Loading
Loading
+10 −3
Original line number Diff line number Diff line
@@ -23,7 +23,10 @@ import com.android.systemui.keyguard.shared.model.BouncerShowMessageModel
import com.android.systemui.keyguard.shared.model.KeyguardBouncerModel
import com.android.systemui.statusbar.phone.KeyguardBouncer
import javax.inject.Inject
import kotlinx.coroutines.channels.BufferOverflow
import kotlinx.coroutines.flow.MutableSharedFlow
import kotlinx.coroutines.flow.MutableStateFlow
import kotlinx.coroutines.flow.asSharedFlow
import kotlinx.coroutines.flow.asStateFlow

/** Encapsulates app state for the lock screen primary and alternate bouncer. */
@@ -68,8 +71,12 @@ constructor(
    private val _keyguardAuthenticated = MutableStateFlow<Boolean?>(null)
    /** Determines if user is already unlocked */
    val keyguardAuthenticated = _keyguardAuthenticated.asStateFlow()
    private val _showMessage = MutableStateFlow<BouncerShowMessageModel?>(null)
    val showMessage = _showMessage.asStateFlow()
    private val _showMessage =
        MutableSharedFlow<BouncerShowMessageModel?>(
            replay = 1,
            onBufferOverflow = BufferOverflow.DROP_OLDEST
        )
    val showMessage = _showMessage.asSharedFlow()
    private val _resourceUpdateRequests = MutableStateFlow(false)
    val resourceUpdateRequests = _resourceUpdateRequests.asStateFlow()
    val bouncerPromptReason: Int
@@ -118,7 +125,7 @@ constructor(
    }

    fun setShowMessage(bouncerShowMessageModel: BouncerShowMessageModel?) {
        _showMessage.value = bouncerShowMessageModel
        _showMessage.tryEmit(bouncerShowMessageModel)
    }

    fun setKeyguardAuthenticated(keyguardAuthenticated: Boolean?) {
+0 −1
Original line number Diff line number Diff line
@@ -117,7 +117,6 @@ constructor(
    @JvmOverloads
    fun show(isScrimmed: Boolean) {
        // Reset some states as we show the bouncer.
        repository.setShowMessage(null)
        repository.setOnScreenTurnedOff(false)
        repository.setKeyguardAuthenticated(null)
        repository.setPrimaryHide(false)
+0 −1
Original line number Diff line number Diff line
@@ -93,7 +93,6 @@ class PrimaryBouncerInteractorTest : SysuiTestCase() {
    @Test
    fun testShow_isScrimmed() {
        mPrimaryBouncerInteractor.show(true)
        verify(repository).setShowMessage(null)
        verify(repository).setOnScreenTurnedOff(false)
        verify(repository).setKeyguardAuthenticated(null)
        verify(repository).setPrimaryHide(false)