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

Commit 87712323 authored by Matt Pietal's avatar Matt Pietal
Browse files

Move maxAlpha calculation to the background

Shouldn't be needed on the main thread

Bug: 391953822
Test: examine traces with perfetto
Flag: com.android.systemui.shared.ambient_aod
Change-Id: I6fc0a41e9d6327006681d8f1dbb62ee82ff7fea2
parent e364898e
Loading
Loading
Loading
Loading
+6 −1
Original line number Diff line number Diff line
@@ -15,9 +15,11 @@
 */
package com.android.systemui.keyguard.domain.interactor

import com.android.app.tracing.coroutines.launchTraced as launch
import com.android.keyguard.logging.ScrimLogger
import com.android.systemui.dagger.SysUISingleton
import com.android.systemui.dagger.qualifiers.Application
import com.android.systemui.dagger.qualifiers.Background
import com.android.systemui.keyguard.data.repository.DEFAULT_REVEAL_DURATION
import com.android.systemui.keyguard.data.repository.LightRevealScrimRepository
import com.android.systemui.keyguard.shared.model.Edge
@@ -31,12 +33,13 @@ import com.android.systemui.util.kotlin.BooleanFlowOperators.anyOf
import com.android.systemui.util.kotlin.sample
import dagger.Lazy
import javax.inject.Inject
import kotlinx.coroutines.CoroutineDispatcher
import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.flow.Flow
import kotlinx.coroutines.flow.filter
import kotlinx.coroutines.flow.flatMapLatest
import kotlinx.coroutines.flow.flowOf
import com.android.app.tracing.coroutines.launchTraced as launch
import kotlinx.coroutines.flow.flowOn

@SysUISingleton
class LightRevealScrimInteractor
@@ -47,6 +50,7 @@ constructor(
    @Application private val scope: CoroutineScope,
    private val scrimLogger: ScrimLogger,
    private val powerInteractor: Lazy<PowerInteractor>,
    @Background backgroundDispatcher: CoroutineDispatcher,
) {
    init {
        listenForStartedKeyguardTransitionStep()
@@ -113,6 +117,7 @@ constructor(
                    repository.maxAlpha
                }
            }
            .flowOn(backgroundDispatcher)

    val revealAmount =
        repository.revealAmount.filter {
+2 −0
Original line number Diff line number Diff line
@@ -20,6 +20,7 @@ import com.android.keyguard.logging.scrimLogger
import com.android.systemui.keyguard.data.lightRevealScrimRepository
import com.android.systemui.kosmos.Kosmos
import com.android.systemui.kosmos.applicationCoroutineScope
import com.android.systemui.kosmos.testDispatcher
import com.android.systemui.power.domain.interactor.powerInteractor

val Kosmos.lightRevealScrimInteractor by
@@ -30,5 +31,6 @@ val Kosmos.lightRevealScrimInteractor by
            applicationCoroutineScope,
            scrimLogger,
            { powerInteractor },
            backgroundDispatcher = testDispatcher,
        )
    }