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

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

Merge "Make sure the current shade blur uses the old blur radius value when...

Merge "Make sure the current shade blur uses the old blur radius value when notificationShadeBlur flag is not enabled." into main
parents 89298126 0a4d8d88
Loading
Loading
Loading
Loading
+3 −1
Original line number Diff line number Diff line
@@ -87,6 +87,7 @@ import com.android.systemui.keyguard.domain.interactor.KeyguardClockInteractor;
import com.android.systemui.keyguard.domain.interactor.KeyguardInteractor;
import com.android.systemui.keyguard.domain.interactor.KeyguardTransitionInteractor;
import com.android.systemui.keyguard.domain.interactor.NaturalScrollingSettingObserver;
import com.android.systemui.keyguard.ui.transitions.BlurConfig;
import com.android.systemui.keyguard.ui.viewmodel.DreamingToLockscreenTransitionViewModel;
import com.android.systemui.keyguard.ui.viewmodel.KeyguardTouchHandlingViewModel;
import com.android.systemui.kosmos.KosmosJavaAdapter;
@@ -587,7 +588,8 @@ public class NotificationPanelViewControllerBaseTest extends SysuiTestCase {
                mPowerInteractor,
                mKeyguardClockPositionAlgorithm,
                mMSDLPlayer,
                mBrightnessMirrorShowingInteractor);
                mBrightnessMirrorShowingInteractor,
                new BlurConfig(0f, 0f));
        mNotificationPanelViewController.initDependencies(
                mCentralSurfaces,
                null,
+3 −1
Original line number Diff line number Diff line
@@ -16,6 +16,7 @@

package com.android.systemui.statusbar

import android.content.res.Resources
import android.view.CrossWindowBlurListeners
import android.view.SurfaceControl
import android.view.ViewRootImpl
@@ -46,6 +47,7 @@ class BlurUtilsTest : SysuiTestCase() {
    @Mock lateinit var dumpManager: DumpManager
    @Mock lateinit var transaction: SurfaceControl.Transaction
    @Mock lateinit var crossWindowBlurListeners: CrossWindowBlurListeners
    @Mock lateinit var resources: Resources
    lateinit var blurUtils: TestableBlurUtils

    @Before
@@ -109,7 +111,7 @@ class BlurUtilsTest : SysuiTestCase() {
        verify(transaction).setEarlyWakeupEnd()
    }

    inner class TestableBlurUtils : BlurUtils(blurConfig, crossWindowBlurListeners, dumpManager) {
    inner class TestableBlurUtils : BlurUtils(resources, blurConfig, crossWindowBlurListeners, dumpManager) {
        var blursEnabled = true

        override fun supportsBlursOnWindows(): Boolean {
+7 −3
Original line number Diff line number Diff line
@@ -110,6 +110,7 @@ import com.android.systemui.keyguard.shared.model.Edge;
import com.android.systemui.keyguard.shared.model.TransitionState;
import com.android.systemui.keyguard.shared.model.TransitionStep;
import com.android.systemui.keyguard.ui.binder.KeyguardTouchViewBinder;
import com.android.systemui.keyguard.ui.transitions.BlurConfig;
import com.android.systemui.keyguard.ui.viewmodel.DreamingToLockscreenTransitionViewModel;
import com.android.systemui.keyguard.ui.viewmodel.KeyguardTouchHandlingViewModel;
import com.android.systemui.media.controls.domain.pipeline.MediaDataManager;
@@ -309,6 +310,7 @@ public final class NotificationPanelViewController implements ShadeSurface, Dump
    private final AlternateBouncerInteractor mAlternateBouncerInteractor;
    private final QuickSettingsControllerImpl mQsController;
    private final TouchHandler mTouchHandler = new TouchHandler();
    private final BlurConfig mBlurConfig;

    private long mDownTime;
    private long mStatusBarLongPressDowntime = -1L;
@@ -606,7 +608,9 @@ public final class NotificationPanelViewController implements ShadeSurface, Dump
            PowerInteractor powerInteractor,
            KeyguardClockPositionAlgorithm keyguardClockPositionAlgorithm,
            MSDLPlayer msdlPlayer,
            BrightnessMirrorShowingInteractor brightnessMirrorShowingInteractor) {
            BrightnessMirrorShowingInteractor brightnessMirrorShowingInteractor,
            BlurConfig blurConfig) {
        mBlurConfig = blurConfig;
        SceneContainerFlag.assertInLegacyMode();
        keyguardStateController.addCallback(new KeyguardStateController.Callback() {
            @Override
@@ -923,8 +927,8 @@ public final class NotificationPanelViewController implements ShadeSurface, Dump
        if (isBouncerShowing && isExpanded()) {
            if (mBlurRenderEffect == null) {
                mBlurRenderEffect = RenderEffect.createBlurEffect(
                        mDepthController.getMaxBlurRadiusPx(),
                        mDepthController.getMaxBlurRadiusPx(),
                        mBlurConfig.getMaxBlurRadiusPx(),
                        mBlurConfig.getMaxBlurRadiusPx(),
                        Shader.TileMode.CLAMP);
            }
            mView.setRenderEffect(mBlurRenderEffect);
+10 −1
Original line number Diff line number Diff line
@@ -17,6 +17,7 @@
package com.android.systemui.statusbar

import android.app.ActivityManager
import android.content.res.Resources
import android.os.SystemProperties
import android.os.Trace
import android.os.Trace.TRACE_TAG_APP
@@ -28,20 +29,28 @@ import android.view.SurfaceControl
import android.view.ViewRootImpl
import androidx.annotation.VisibleForTesting
import com.android.systemui.Dumpable
import com.android.systemui.Flags
import com.android.systemui.dagger.SysUISingleton
import com.android.systemui.dagger.qualifiers.Main
import com.android.systemui.dump.DumpManager
import java.io.PrintWriter
import javax.inject.Inject
import com.android.systemui.keyguard.ui.transitions.BlurConfig
import com.android.systemui.res.R

@SysUISingleton
open class BlurUtils @Inject constructor(
    @Main resources: Resources,
    blurConfig: BlurConfig,
    private val crossWindowBlurListeners: CrossWindowBlurListeners,
    dumpManager: DumpManager
) : Dumpable {
    val minBlurRadius = blurConfig.minBlurRadiusPx
    val maxBlurRadius = blurConfig.maxBlurRadiusPx
    val maxBlurRadius = if (Flags.notificationShadeBlur()) {
        blurConfig.maxBlurRadiusPx
    } else {
        resources.getDimensionPixelSize(R.dimen.max_window_blur_radius).toFloat()
    }

    private var lastAppliedBlur = 0
    private var earlyWakeupEnabled = false