Merge "[DO NOT MERGE] Revert "Fixed the performance of unlocking when dozing"" into sc-qpr1-dev
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/LightRevealScrim.kt b/packages/SystemUI/src/com/android/systemui/statusbar/LightRevealScrim.kt
index bbee194..21ed9da 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/LightRevealScrim.kt
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/LightRevealScrim.kt
@@ -155,11 +155,6 @@
lateinit var isScrimOpaqueChangedListener: Consumer<Boolean>
/**
- * 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 @@
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 98e6879..2a8771e 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.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 @@
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 @@
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 @@
})
start()
}
- alreadyUnblurredWhileDozing = statusBarStateController.dozeAmount != 0.0f
}
override fun onKeyguardShowingChanged() {
@@ -288,24 +282,10 @@
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 @@
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 6cf1d82..88434cc 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 @@
}
private LockscreenShadeTransitionController mLockscreenShadeTransitionController;
- private boolean mCallingFadingAwayAfterReveal;
public interface ExpansionChangedListener {
void onExpansionChanged(float expansion, boolean expanded);
@@ -640,7 +639,7 @@
+ "mStatusBarKeyguardViewManager was null");
return;
}
- if (mKeyguardStateController.isKeyguardFadingAway() && !mCallingFadingAwayAfterReveal) {
+ if (mKeyguardStateController.isKeyguardFadingAway()) {
mStatusBarKeyguardViewManager.onKeyguardFadedAway();
}
}
@@ -3584,19 +3583,8 @@
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();
}