diff options
4 files changed, 19 insertions, 5 deletions
diff --git a/core/res/res/anim/lock_screen_behind_enter_fade_in.xml b/core/res/res/anim/lock_screen_behind_enter_fade_in.xml index e9475f52d22a..ff95aeae1683 100644 --- a/core/res/res/anim/lock_screen_behind_enter_fade_in.xml +++ b/core/res/res/anim/lock_screen_behind_enter_fade_in.xml @@ -16,7 +16,6 @@    -->  <alpha xmlns:android="http://schemas.android.com/apk/res/android" -    android:background="#ff000000"      android:detachWallpaper="true"      android:shareInterpolator="false"      android:interpolator="@interpolator/linear" diff --git a/packages/SystemUI/src/com/android/systemui/keyguard/KeyguardViewMediator.java b/packages/SystemUI/src/com/android/systemui/keyguard/KeyguardViewMediator.java index 6809e76c18e3..8fc778ab807b 100644 --- a/packages/SystemUI/src/com/android/systemui/keyguard/KeyguardViewMediator.java +++ b/packages/SystemUI/src/com/android/systemui/keyguard/KeyguardViewMediator.java @@ -344,6 +344,11 @@ public class KeyguardViewMediator extends SystemUI {       */      private WorkLockActivityController mWorkLockController; +    /** +     * @see #setPulsing(boolean) +     */ +    private boolean mPulsing; +      private boolean mLockLater;      private boolean mWakeAndUnlocking; @@ -1798,10 +1803,12 @@ public class KeyguardViewMediator extends SystemUI {                  int flags = 0;                  if (mStatusBarKeyguardViewManager.shouldDisableWindowAnimationsForUnlock() -                        || mWakeAndUnlocking) { -                    flags |= WindowManagerPolicyConstants.KEYGUARD_GOING_AWAY_FLAG_NO_WINDOW_ANIMATIONS; +                        || (mWakeAndUnlocking && !mPulsing)) { +                    flags |= WindowManagerPolicyConstants +                            .KEYGUARD_GOING_AWAY_FLAG_NO_WINDOW_ANIMATIONS;                  } -                if (mStatusBarKeyguardViewManager.isGoingToNotificationShade()) { +                if (mStatusBarKeyguardViewManager.isGoingToNotificationShade() +                        || (mWakeAndUnlocking && mPulsing)) {                      flags |= WindowManagerPolicyConstants.KEYGUARD_GOING_AWAY_FLAG_TO_SHADE;                  }                  if (mStatusBarKeyguardViewManager.isUnlockWithWallpaper()) { @@ -2104,6 +2111,13 @@ public class KeyguardViewMediator extends SystemUI {          setShowingLocked(mShowing, aodShowing);      } +    /** +     * @param pulsing true when device temporarily wakes up to display an incoming notification. +     */ +    public void setPulsing(boolean pulsing) { +        mPulsing = pulsing; +    } +      private static class StartKeyguardExitAnimParams {          long startTime; diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/ScrimState.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/ScrimState.java index cdbad596051b..19015fcdacf7 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/ScrimState.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/ScrimState.java @@ -146,7 +146,7 @@ public enum ScrimState {              mAnimationDuration = StatusBar.FADE_KEYGUARD_DURATION;              mAnimateChange = !mLaunchingAffordanceWithPreview; -            if (previousState == ScrimState.AOD || previousState == ScrimState.PULSING) { +            if (previousState == ScrimState.AOD) {                  // Fade from black to transparent when coming directly from AOD                  updateScrimColor(mScrimInFront, 1, Color.BLACK);                  updateScrimColor(mScrimBehind, 1, Color.BLACK); 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 cd30104019b1..d5dcdf6f4477 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBar.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBar.java @@ -4860,6 +4860,7 @@ public class StatusBar extends SystemUI implements DemoMode,                  }                  private void setPulsing(boolean pulsing) { +                    mKeyguardViewMediator.setPulsing(pulsing);                      mNotificationPanel.setPulsing(pulsing);                      mVisualStabilityManager.setPulsing(pulsing);                      mIgnoreTouchWhilePulsing = false;  |