diff options
Diffstat (limited to 'src/com/android/launcher3/Launcher.java')
-rw-r--r-- | src/com/android/launcher3/Launcher.java | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/src/com/android/launcher3/Launcher.java b/src/com/android/launcher3/Launcher.java index c96c2a7b9..f77308e14 100644 --- a/src/com/android/launcher3/Launcher.java +++ b/src/com/android/launcher3/Launcher.java @@ -18,7 +18,9 @@ package com.android.launcher3; import android.Manifest; import android.animation.Animator; +import android.animation.AnimatorListenerAdapter; import android.animation.AnimatorSet; +import android.animation.ObjectAnimator; import android.animation.ValueAnimator; import android.annotation.SuppressLint; import android.annotation.TargetApi; @@ -267,6 +269,8 @@ public class Launcher extends BaseActivity private boolean mHasFocus = false; private boolean mAttached = false; + private ObjectAnimator mScrimAnimator; + private PopupDataProvider mPopupDataProvider; private View.OnTouchListener mHapticFeedbackTouchListener; @@ -920,6 +924,24 @@ public class Launcher extends BaseActivity if (!isWorkspaceLoading()) { NotificationListener.setNotificationsChangedListener(mPopupDataProvider); } + + if (mIsResumeFromActionScreenOff && mDragLayer.getBackground() != null) { + if (mScrimAnimator != null) { + mScrimAnimator.cancel(); + } + mDragLayer.getBackground().setAlpha(0); + mScrimAnimator = ObjectAnimator.ofInt(mDragLayer.getBackground(), + LauncherAnimUtils.DRAWABLE_ALPHA, 0, 255); + mScrimAnimator.addListener(new AnimatorListenerAdapter() { + @Override + public void onAnimationEnd(Animator animation) { + mScrimAnimator = null; + } + }); + mScrimAnimator.setDuration(600); + mScrimAnimator.setStartDelay(getWindow().getTransitionBackgroundFadeDuration()); + mScrimAnimator.start(); + } } @Override |