Loading quickstep/src/com/android/launcher3/taskbar/TaskbarDividerPopupView.kt +10 −24 Original line number Diff line number Diff line Loading @@ -16,7 +16,6 @@ package com.android.launcher3.taskbar import android.animation.Animator import android.animation.AnimatorListenerAdapter import android.animation.AnimatorSet import android.animation.ObjectAnimator import android.annotation.SuppressLint Loading Loading @@ -197,32 +196,19 @@ constructor( mActivityContext.deviceProfile.taskbarIconSize) / 2 + verticalOffsetForPopupView } override fun animateClose() { if (!mIsOpen) { return } if (mOpenCloseAnimator != null) { mOpenCloseAnimator.cancel() } mIsOpen = false override fun onCreateCloseAnimation(anim: AnimatorSet?) { // If taskbar pinning preference changed insert custom close animation for popup menu. if (didPreferenceChange) { mOpenCloseAnimator = getCloseAnimator() mOpenCloseAnimator.addListener( object : AnimatorListenerAdapter() { override fun onAnimationEnd(animation: Animator) { mOpenCloseAnimator = null if (mDeferContainerRemoval) { setVisibility(INVISIBLE) } else { closeComplete() } } } ) onCloseCallback(didPreferenceChange) onCloseCallback = {} mOpenCloseAnimator.start() } /** Aligning the view pivot to center for animation. */ override fun setPivotForOpenCloseAnimation() { pivotX = measuredWidth / 2f pivotY = measuredHeight.toFloat() } private fun getCloseAnimator(): AnimatorSet { Loading src/com/android/launcher3/popup/ArrowPopup.java +12 −4 Original line number Diff line number Diff line Loading @@ -636,10 +636,10 @@ public abstract class ArrowPopup<T extends Context & ActivityContext> return getResources().getDimensionPixelSize(R.dimen.popup_vertical_padding); } protected AnimatorSet getOpenCloseAnimator(boolean isOpening, int scaleDuration, int fadeStartDelay, int fadeDuration, int childFadeStartDelay, int childFadeDuration, Interpolator interpolator) { /** * Sets X and Y pivots for the view animation considering arrow position. */ protected void setPivotForOpenCloseAnimation() { int arrowCenter = mArrowOffsetHorizontal + mArrowWidth / 2; if (mIsArrowRotated) { setPivotX(mIsLeftAligned ? 0f : getMeasuredWidth()); Loading @@ -648,6 +648,14 @@ public abstract class ArrowPopup<T extends Context & ActivityContext> setPivotX(mIsLeftAligned ? arrowCenter : getMeasuredWidth() - arrowCenter); setPivotY(mIsAboveIcon ? getMeasuredHeight() : 0f); } } protected AnimatorSet getOpenCloseAnimator(boolean isOpening, int scaleDuration, int fadeStartDelay, int fadeDuration, int childFadeStartDelay, int childFadeDuration, Interpolator interpolator) { setPivotForOpenCloseAnimation(); float[] alphaValues = isOpening ? new float[] {0, 1} : new float[] {1, 0}; float[] scaleValues = isOpening ? new float[] {0.5f, 1.02f} : new float[] {1f, 0.5f}; Loading Loading
quickstep/src/com/android/launcher3/taskbar/TaskbarDividerPopupView.kt +10 −24 Original line number Diff line number Diff line Loading @@ -16,7 +16,6 @@ package com.android.launcher3.taskbar import android.animation.Animator import android.animation.AnimatorListenerAdapter import android.animation.AnimatorSet import android.animation.ObjectAnimator import android.annotation.SuppressLint Loading Loading @@ -197,32 +196,19 @@ constructor( mActivityContext.deviceProfile.taskbarIconSize) / 2 + verticalOffsetForPopupView } override fun animateClose() { if (!mIsOpen) { return } if (mOpenCloseAnimator != null) { mOpenCloseAnimator.cancel() } mIsOpen = false override fun onCreateCloseAnimation(anim: AnimatorSet?) { // If taskbar pinning preference changed insert custom close animation for popup menu. if (didPreferenceChange) { mOpenCloseAnimator = getCloseAnimator() mOpenCloseAnimator.addListener( object : AnimatorListenerAdapter() { override fun onAnimationEnd(animation: Animator) { mOpenCloseAnimator = null if (mDeferContainerRemoval) { setVisibility(INVISIBLE) } else { closeComplete() } } } ) onCloseCallback(didPreferenceChange) onCloseCallback = {} mOpenCloseAnimator.start() } /** Aligning the view pivot to center for animation. */ override fun setPivotForOpenCloseAnimation() { pivotX = measuredWidth / 2f pivotY = measuredHeight.toFloat() } private fun getCloseAnimator(): AnimatorSet { Loading
src/com/android/launcher3/popup/ArrowPopup.java +12 −4 Original line number Diff line number Diff line Loading @@ -636,10 +636,10 @@ public abstract class ArrowPopup<T extends Context & ActivityContext> return getResources().getDimensionPixelSize(R.dimen.popup_vertical_padding); } protected AnimatorSet getOpenCloseAnimator(boolean isOpening, int scaleDuration, int fadeStartDelay, int fadeDuration, int childFadeStartDelay, int childFadeDuration, Interpolator interpolator) { /** * Sets X and Y pivots for the view animation considering arrow position. */ protected void setPivotForOpenCloseAnimation() { int arrowCenter = mArrowOffsetHorizontal + mArrowWidth / 2; if (mIsArrowRotated) { setPivotX(mIsLeftAligned ? 0f : getMeasuredWidth()); Loading @@ -648,6 +648,14 @@ public abstract class ArrowPopup<T extends Context & ActivityContext> setPivotX(mIsLeftAligned ? arrowCenter : getMeasuredWidth() - arrowCenter); setPivotY(mIsAboveIcon ? getMeasuredHeight() : 0f); } } protected AnimatorSet getOpenCloseAnimator(boolean isOpening, int scaleDuration, int fadeStartDelay, int fadeDuration, int childFadeStartDelay, int childFadeDuration, Interpolator interpolator) { setPivotForOpenCloseAnimation(); float[] alphaValues = isOpening ? new float[] {0, 1} : new float[] {1, 0}; float[] scaleValues = isOpening ? new float[] {0.5f, 1.02f} : new float[] {1f, 0.5f}; Loading