Loading src/com/android/launcher3/anim/RoundedRectRevealOutlineProvider.java +1 −1 Original line number Diff line number Diff line Loading @@ -56,7 +56,7 @@ public class RoundedRectRevealOutlineProvider extends RevealOutlineAnimation { @Override public boolean shouldRemoveElevationDuringAnimation() { return false; return true; } @Override Loading src/com/android/launcher3/folder/Folder.java +4 −1 Original line number Diff line number Diff line Loading @@ -791,8 +791,11 @@ public class Folder extends AbstractFloatingView implements DragSource, View.OnC mDragController.removeDropTarget(this); clearFocus(); if (mFolderIcon != null) { mFolderIcon.setBackgroundVisible(true); mFolderIcon.setVisibility(View.VISIBLE); if (FeatureFlags.LAUNCHER3_NEW_FOLDER_ANIMATION) { mFolderIcon.setBackgroundVisible(true); mFolderIcon.mBackground.fadeInBackgroundShadow(); } if (wasAnimated) { mFolderIcon.mBackground.animateBackgroundStroke(); if (mFolderIcon.hasBadge()) { Loading src/com/android/launcher3/folder/FolderAnimationManager.java +6 −0 Original line number Diff line number Diff line Loading @@ -221,6 +221,12 @@ public class FolderAnimationManager { mFolder.setTranslationY(0.0f); mFolder.setScaleX(1f); mFolder.setScaleY(1f); if (mIsOpening) { getAnimator(mFolder, View.TRANSLATION_Z, -mFolder.getElevation(), 0) .setDuration(150) .start(); } } }); Loading src/com/android/launcher3/folder/FolderIcon.java +34 −1 Original line number Diff line number Diff line Loading @@ -555,6 +555,7 @@ public class FolderIcon extends FrameLayout implements FolderListener { private int mBgColor; private float mStrokeWidth; private int mStrokeAlpha = MAX_BG_OPACITY; private int mShadowAlpha = 255; private View mInvalidateDelegate; public int previewSize; Loading @@ -580,6 +581,7 @@ public class FolderIcon extends FrameLayout implements FolderListener { ValueAnimator mScaleAnimator; ObjectAnimator mStrokeAlphaAnimator; ObjectAnimator mShadowAnimator; private static final Property<PreviewBackground, Integer> STROKE_ALPHA = new Property<PreviewBackground, Integer>(Integer.class, "strokeAlpha") { Loading @@ -595,6 +597,20 @@ public class FolderIcon extends FrameLayout implements FolderListener { } }; private static final Property<PreviewBackground, Integer> SHADOW_ALPHA = new Property<PreviewBackground, Integer>(Integer.class, "shadowAlpha") { @Override public Integer get(PreviewBackground previewBackground) { return previewBackground.mShadowAlpha; } @Override public void set(PreviewBackground previewBackground, Integer alpha) { previewBackground.mShadowAlpha = alpha; previewBackground.invalidate(); } }; public void setup(Launcher launcher, View invalidateDelegate, int availableSpace, int topPadding) { mInvalidateDelegate = invalidateDelegate; Loading Loading @@ -692,10 +708,11 @@ public class FolderIcon extends FrameLayout implements FolderListener { mShaderMatrix.setScale(shadowRadius, shadowRadius); mShaderMatrix.postTranslate(radius + offsetX, shadowRadius + offsetY); mShadowShader.setLocalMatrix(mShaderMatrix); mPaint.setAlpha(mShadowAlpha); mPaint.setShader(mShadowShader); canvas.drawPaint(mPaint); mPaint.setAlpha(255); mPaint.setShader(null); if (canvas.isHardwareAccelerated()) { mPaint.setXfermode(mShadowPorterDuffXfermode); canvas.drawCircle(radius + offsetX, radius + offsetY, radius, mPaint); Loading @@ -705,6 +722,22 @@ public class FolderIcon extends FrameLayout implements FolderListener { canvas.restoreToCount(saveCount); } public void fadeInBackgroundShadow() { if (mShadowAnimator != null) { mShadowAnimator.cancel(); } mShadowAnimator = ObjectAnimator .ofInt(this, SHADOW_ALPHA, 0, 255) .setDuration(100); mShadowAnimator.addListener(new AnimatorListenerAdapter() { @Override public void onAnimationEnd(Animator animation) { mShadowAnimator = null; } }); mShadowAnimator.start(); } public void animateBackgroundStroke() { if (mStrokeAlphaAnimator != null) { mStrokeAlphaAnimator.cancel(); Loading Loading
src/com/android/launcher3/anim/RoundedRectRevealOutlineProvider.java +1 −1 Original line number Diff line number Diff line Loading @@ -56,7 +56,7 @@ public class RoundedRectRevealOutlineProvider extends RevealOutlineAnimation { @Override public boolean shouldRemoveElevationDuringAnimation() { return false; return true; } @Override Loading
src/com/android/launcher3/folder/Folder.java +4 −1 Original line number Diff line number Diff line Loading @@ -791,8 +791,11 @@ public class Folder extends AbstractFloatingView implements DragSource, View.OnC mDragController.removeDropTarget(this); clearFocus(); if (mFolderIcon != null) { mFolderIcon.setBackgroundVisible(true); mFolderIcon.setVisibility(View.VISIBLE); if (FeatureFlags.LAUNCHER3_NEW_FOLDER_ANIMATION) { mFolderIcon.setBackgroundVisible(true); mFolderIcon.mBackground.fadeInBackgroundShadow(); } if (wasAnimated) { mFolderIcon.mBackground.animateBackgroundStroke(); if (mFolderIcon.hasBadge()) { Loading
src/com/android/launcher3/folder/FolderAnimationManager.java +6 −0 Original line number Diff line number Diff line Loading @@ -221,6 +221,12 @@ public class FolderAnimationManager { mFolder.setTranslationY(0.0f); mFolder.setScaleX(1f); mFolder.setScaleY(1f); if (mIsOpening) { getAnimator(mFolder, View.TRANSLATION_Z, -mFolder.getElevation(), 0) .setDuration(150) .start(); } } }); Loading
src/com/android/launcher3/folder/FolderIcon.java +34 −1 Original line number Diff line number Diff line Loading @@ -555,6 +555,7 @@ public class FolderIcon extends FrameLayout implements FolderListener { private int mBgColor; private float mStrokeWidth; private int mStrokeAlpha = MAX_BG_OPACITY; private int mShadowAlpha = 255; private View mInvalidateDelegate; public int previewSize; Loading @@ -580,6 +581,7 @@ public class FolderIcon extends FrameLayout implements FolderListener { ValueAnimator mScaleAnimator; ObjectAnimator mStrokeAlphaAnimator; ObjectAnimator mShadowAnimator; private static final Property<PreviewBackground, Integer> STROKE_ALPHA = new Property<PreviewBackground, Integer>(Integer.class, "strokeAlpha") { Loading @@ -595,6 +597,20 @@ public class FolderIcon extends FrameLayout implements FolderListener { } }; private static final Property<PreviewBackground, Integer> SHADOW_ALPHA = new Property<PreviewBackground, Integer>(Integer.class, "shadowAlpha") { @Override public Integer get(PreviewBackground previewBackground) { return previewBackground.mShadowAlpha; } @Override public void set(PreviewBackground previewBackground, Integer alpha) { previewBackground.mShadowAlpha = alpha; previewBackground.invalidate(); } }; public void setup(Launcher launcher, View invalidateDelegate, int availableSpace, int topPadding) { mInvalidateDelegate = invalidateDelegate; Loading Loading @@ -692,10 +708,11 @@ public class FolderIcon extends FrameLayout implements FolderListener { mShaderMatrix.setScale(shadowRadius, shadowRadius); mShaderMatrix.postTranslate(radius + offsetX, shadowRadius + offsetY); mShadowShader.setLocalMatrix(mShaderMatrix); mPaint.setAlpha(mShadowAlpha); mPaint.setShader(mShadowShader); canvas.drawPaint(mPaint); mPaint.setAlpha(255); mPaint.setShader(null); if (canvas.isHardwareAccelerated()) { mPaint.setXfermode(mShadowPorterDuffXfermode); canvas.drawCircle(radius + offsetX, radius + offsetY, radius, mPaint); Loading @@ -705,6 +722,22 @@ public class FolderIcon extends FrameLayout implements FolderListener { canvas.restoreToCount(saveCount); } public void fadeInBackgroundShadow() { if (mShadowAnimator != null) { mShadowAnimator.cancel(); } mShadowAnimator = ObjectAnimator .ofInt(this, SHADOW_ALPHA, 0, 255) .setDuration(100); mShadowAnimator.addListener(new AnimatorListenerAdapter() { @Override public void onAnimationEnd(Animator animation) { mShadowAnimator = null; } }); mShadowAnimator.start(); } public void animateBackgroundStroke() { if (mStrokeAlphaAnimator != null) { mStrokeAlphaAnimator.cancel(); Loading