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

Commit 1b59dcc6 authored by Chandru S's avatar Chandru S Committed by Android (Google) Code Review
Browse files

Merge "Add helper method that interpolate transition progress to window blur radius" into main

parents 2022fc79 82dcb20f
Loading
Loading
Loading
Loading
+11 −2
Original line number Diff line number Diff line
@@ -17,7 +17,7 @@
package com.android.systemui.keyguard.ui.transitions

import android.content.res.Resources
import com.android.systemui.Flags.notificationShadeBlur
import android.util.MathUtils
import com.android.systemui.dagger.SysUISingleton
import com.android.systemui.dagger.qualifiers.Main
import com.android.systemui.keyguard.ui.viewmodel.AlternateBouncerToPrimaryBouncerTransitionViewModel
@@ -31,6 +31,7 @@ import com.android.systemui.keyguard.ui.viewmodel.PrimaryBouncerToGlanceableHubT
import com.android.systemui.keyguard.ui.viewmodel.PrimaryBouncerToGoneTransitionViewModel
import com.android.systemui.keyguard.ui.viewmodel.PrimaryBouncerToLockscreenTransitionViewModel
import com.android.systemui.res.R
import com.android.systemui.window.flag.WindowBlurFlag
import dagger.Binds
import dagger.Module
import dagger.Provides
@@ -48,6 +49,14 @@ import kotlinx.coroutines.flow.Flow
interface PrimaryBouncerTransition {
    /** Radius of blur applied to the window's root view. */
    val windowBlurRadius: Flow<Float>

    fun transitionProgressToBlurRadius(
        starBlurRadius: Float,
        endBlurRadius: Float,
        transitionProgress: Float,
    ): Float {
        return MathUtils.lerp(starBlurRadius, endBlurRadius, transitionProgress)
    }
}

/**
@@ -111,7 +120,7 @@ interface PrimaryBouncerTransitionModule {
        fun provideBlurConfig(@Main resources: Resources): BlurConfig {
            val minBlurRadius = resources.getDimensionPixelSize(R.dimen.min_window_blur_radius)
            val maxBlurRadius =
                if (notificationShadeBlur()) {
                if (WindowBlurFlag.isEnabled) {
                    resources.getDimensionPixelSize(R.dimen.max_shade_window_blur_radius)
                } else {
                    resources.getDimensionPixelSize(R.dimen.max_window_blur_radius)
+5 −2
Original line number Diff line number Diff line
@@ -16,7 +16,6 @@

package com.android.systemui.keyguard.ui.viewmodel

import android.util.MathUtils
import com.android.systemui.dagger.SysUISingleton
import com.android.systemui.keyguard.domain.interactor.FromAlternateBouncerTransitionInteractor
import com.android.systemui.keyguard.shared.model.Edge
@@ -87,7 +86,11 @@ constructor(
                transitionAnimation.sharedFlow(
                    duration = FromAlternateBouncerTransitionInteractor.TO_PRIMARY_BOUNCER_DURATION,
                    onStep = { step ->
                        MathUtils.lerp(blurConfig.minBlurRadiusPx, blurConfig.maxBlurRadiusPx, step)
                        transitionProgressToBlurRadius(
                            starBlurRadius = blurConfig.minBlurRadiusPx,
                            endBlurRadius = blurConfig.maxBlurRadiusPx,
                            transitionProgress = step,
                        )
                    },
                    onFinish = { blurConfig.maxBlurRadiusPx },
                ),
+5 −2
Original line number Diff line number Diff line
@@ -16,7 +16,6 @@

package com.android.systemui.keyguard.ui.viewmodel

import android.util.MathUtils
import com.android.systemui.dagger.SysUISingleton
import com.android.systemui.keyguard.domain.interactor.FromDozingTransitionInteractor.Companion.TO_PRIMARY_BOUNCER_DURATION
import com.android.systemui.keyguard.shared.model.Edge
@@ -57,7 +56,11 @@ constructor(private val blurConfig: BlurConfig, animationFlow: KeyguardTransitio
        transitionAnimation.sharedFlow(
            TO_PRIMARY_BOUNCER_DURATION,
            onStep = { step ->
                MathUtils.lerp(blurConfig.minBlurRadiusPx, blurConfig.maxBlurRadiusPx, step)
                transitionProgressToBlurRadius(
                    starBlurRadius = blurConfig.minBlurRadiusPx,
                    endBlurRadius = blurConfig.maxBlurRadiusPx,
                    transitionProgress = step,
                )
            },
            onFinish = { blurConfig.maxBlurRadiusPx },
        )
+5 −2
Original line number Diff line number Diff line
@@ -16,7 +16,6 @@

package com.android.systemui.keyguard.ui.viewmodel

import android.util.MathUtils
import com.android.systemui.dagger.SysUISingleton
import com.android.systemui.keyguard.domain.interactor.FromLockscreenTransitionInteractor
import com.android.systemui.keyguard.shared.model.Edge
@@ -90,7 +89,11 @@ constructor(
                transitionAnimation.sharedFlow(
                    duration = FromLockscreenTransitionInteractor.TO_PRIMARY_BOUNCER_DURATION,
                    onStep = {
                        MathUtils.lerp(blurConfig.minBlurRadiusPx, blurConfig.maxBlurRadiusPx, it)
                        transitionProgressToBlurRadius(
                            starBlurRadius = blurConfig.minBlurRadiusPx,
                            endBlurRadius = blurConfig.maxBlurRadiusPx,
                            transitionProgress = it,
                        )
                    },
                ),
        )
+5 −2
Original line number Diff line number Diff line
@@ -16,7 +16,6 @@

package com.android.systemui.keyguard.ui.viewmodel

import android.util.MathUtils
import com.android.systemui.dagger.SysUISingleton
import com.android.systemui.deviceentry.domain.interactor.DeviceEntryUdfpsInteractor
import com.android.systemui.keyguard.domain.interactor.FromPrimaryBouncerTransitionInteractor
@@ -84,7 +83,11 @@ constructor(
        transitionAnimation.sharedFlow(
            duration = FromPrimaryBouncerTransitionInteractor.TO_AOD_DURATION,
            onStep = { step ->
                MathUtils.lerp(blurConfig.maxBlurRadiusPx, blurConfig.minBlurRadiusPx, step)
                transitionProgressToBlurRadius(
                    starBlurRadius = blurConfig.maxBlurRadiusPx,
                    endBlurRadius = blurConfig.minBlurRadiusPx,
                    transitionProgress = step,
                )
            },
            onFinish = { blurConfig.minBlurRadiusPx },
        )
Loading