From d4a2e7c9a5fdacb54750396c22acbe451decfa3d Mon Sep 17 00:00:00 2001 From: Matt Pietal Date: Fri, 5 Nov 2021 18:47:36 +0000 Subject: [DO NOT MERGE] Revert "Fixed the performance of unlocking when dozing" This reverts commit 87e83cd7664a689512b7bbafb5f79f00a55501ea. We are forward fixing in sc-v2-dev Reason for revert: b/205193749 Change-Id: I9c26643bcfbd37fb36d610291e883112e680e308 --- .../android/systemui/statusbar/LightRevealScrim.kt | 15 ------------- .../statusbar/NotificationShadeDepthController.kt | 25 ++-------------------- .../systemui/statusbar/phone/StatusBar.java | 18 +++------------- 3 files changed, 5 insertions(+), 53 deletions(-) diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/LightRevealScrim.kt b/packages/SystemUI/src/com/android/systemui/statusbar/LightRevealScrim.kt index bbee1942cfc4..21ed9da896a5 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/LightRevealScrim.kt +++ b/packages/SystemUI/src/com/android/systemui/statusbar/LightRevealScrim.kt @@ -154,11 +154,6 @@ class LightRevealScrim(context: Context?, attrs: AttributeSet?) : View(context, */ lateinit var isScrimOpaqueChangedListener: Consumer - /** - * A runnable to call when the scrim has been fully revealed. This is only invoked once - */ - var fullyRevealedRunnable: Runnable? = null - /** * How much of the underlying views are revealed, in percent. 0 means they will be completely * obscured and 1 means they'll be fully visible. @@ -170,20 +165,10 @@ class LightRevealScrim(context: Context?, attrs: AttributeSet?) : View(context, revealEffect.setRevealAmountOnScrim(value, this) updateScrimOpaque() - maybeTriggerFullyRevealedRunnable() invalidate() } } - private fun maybeTriggerFullyRevealedRunnable() { - if (revealAmount == 1.0f) { - fullyRevealedRunnable?.let { - it.run() - fullyRevealedRunnable = null - } - } - } - /** * The [LightRevealEffect] used to manipulate the radial gradient whenever [revealAmount] * changes. diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/NotificationShadeDepthController.kt b/packages/SystemUI/src/com/android/systemui/statusbar/NotificationShadeDepthController.kt index 98e6879d208f..2a8771e96e7b 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/NotificationShadeDepthController.kt +++ b/packages/SystemUI/src/com/android/systemui/statusbar/NotificationShadeDepthController.kt @@ -37,6 +37,7 @@ import com.android.systemui.dagger.SysUISingleton import com.android.systemui.dump.DumpManager import com.android.systemui.plugins.statusbar.StatusBarStateController import com.android.systemui.statusbar.phone.BiometricUnlockController +import com.android.systemui.statusbar.phone.BiometricUnlockController.MODE_WAKE_AND_UNLOCK import com.android.systemui.statusbar.phone.DozeParameters import com.android.systemui.statusbar.phone.PanelExpansionListener import com.android.systemui.statusbar.phone.ScrimController @@ -72,10 +73,6 @@ class NotificationShadeDepthController @Inject constructor( private const val TAG = "DepthController" } - /** - * Is did we already unblur while dozing? - */ - private var alreadyUnblurredWhileDozing = false lateinit var root: View private var blurRoot: View? = null private var keyguardAnimator: Animator? = null @@ -240,11 +237,9 @@ class NotificationShadeDepthController @Inject constructor( private val keyguardStateCallback = object : KeyguardStateController.Callback { override fun onKeyguardFadingAwayChanged() { if (!keyguardStateController.isKeyguardFadingAway || - !biometricUnlockController.isWakeAndUnlock) { + biometricUnlockController.mode != MODE_WAKE_AND_UNLOCK) { return } - // When wakeAndUnlocking the screen remains dozing, so we have to manually trigger - // the unblur earlier keyguardAnimator?.cancel() keyguardAnimator = ValueAnimator.ofFloat(1f, 0f).apply { @@ -266,7 +261,6 @@ class NotificationShadeDepthController @Inject constructor( }) start() } - alreadyUnblurredWhileDozing = statusBarStateController.dozeAmount != 0.0f } override fun onKeyguardShowingChanged() { @@ -288,24 +282,10 @@ class NotificationShadeDepthController @Inject constructor( if (isDozing) { shadeAnimation.finishIfRunning() brightnessMirrorSpring.finishIfRunning() - - // unset this for safety, to be ready for the next wakeup - alreadyUnblurredWhileDozing = false } } override fun onDozeAmountChanged(linear: Float, eased: Float) { - if (alreadyUnblurredWhileDozing) { - if (linear == 0.0f) { - // We finished waking up, let's reset - alreadyUnblurredWhileDozing = false - } else { - // We've already handled the unbluring from the keyguardAnimator above. - // if we would continue, we'd play another unzoom / blur animation from the - // dozing changing. - return - } - } wakeAndUnlockBlurRadius = blurUtils.blurRadiusOfRatio(eased) scheduleUpdate() } @@ -463,7 +443,6 @@ class NotificationShadeDepthController @Inject constructor( it.println("blursDisabledForAppLaunch: $blursDisabledForAppLaunch") it.println("qsPanelExpansion: $qsPanelExpansion") it.println("transitionToFullShadeProgress: $transitionToFullShadeProgress") - it.println("alreadyUnblurredWhileDozing: $alreadyUnblurredWhileDozing") it.println("lastAppliedBlur: $lastAppliedBlur") } } diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBar.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBar.java index 6cf1d82149ce..88434cc214be 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBar.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBar.java @@ -360,7 +360,6 @@ public class StatusBar extends SystemUI implements DemoMode, } private LockscreenShadeTransitionController mLockscreenShadeTransitionController; - private boolean mCallingFadingAwayAfterReveal; public interface ExpansionChangedListener { void onExpansionChanged(float expansion, boolean expanded); @@ -640,7 +639,7 @@ public class StatusBar extends SystemUI implements DemoMode, + "mStatusBarKeyguardViewManager was null"); return; } - if (mKeyguardStateController.isKeyguardFadingAway() && !mCallingFadingAwayAfterReveal) { + if (mKeyguardStateController.isKeyguardFadingAway()) { mStatusBarKeyguardViewManager.onKeyguardFadedAway(); } } @@ -3584,19 +3583,8 @@ public class StatusBar extends SystemUI implements DemoMode, public void fadeKeyguardWhilePulsing() { mNotificationPanelViewController.fadeOut(0, FADE_KEYGUARD_DURATION_PULSING, ()-> { - Runnable finishFading = () -> { - mCallingFadingAwayAfterReveal = false; - hideKeyguard(); - mStatusBarKeyguardViewManager.onKeyguardFadedAway(); - }; - if (mLightRevealScrim.getRevealAmount() != 1.0f) { - mCallingFadingAwayAfterReveal = true; - // we're still revealing the Light reveal, let's only go to keyguard once - // Going there introduces lots of jank - mLightRevealScrim.setFullyRevealedRunnable(finishFading); - } else { - finishFading.run(); - } + hideKeyguard(); + mStatusBarKeyguardViewManager.onKeyguardFadedAway(); }).start(); } -- cgit v1.2.3-59-g8ed1b