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

Commit 3537f774 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

parents f371c654 634848eb
Loading
Loading
Loading
Loading
+10 −3
Original line number Original line 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.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?) {
+0 −1
Original line number Original line Diff line number Diff line
@@ -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)
+0 −1
Original line number Original line Diff line number Diff line
@@ -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)