Substantially improved performance of dragging and drop animations
-> Took DragView drawing out of the window and put it into the DragLayer
-> Added fade-in/out animations to transition between the final view
and the DragView, after the view animates
-> Enabled hardware layers on Folder items which improves the
performance Folder reordering
Change-Id: I4d92ca9fba172d1bab9efc215a99abcaadcdf503
diff --git a/src/com/android/launcher2/FolderIcon.java b/src/com/android/launcher2/FolderIcon.java
index 4071433..4978e98 100644
--- a/src/com/android/launcher2/FolderIcon.java
+++ b/src/com/android/launcher2/FolderIcon.java
@@ -55,7 +55,7 @@
private static final int NUM_ITEMS_IN_PREVIEW = 3;
private static final int CONSUMPTION_ANIMATION_DURATION = 100;
private static final int DROP_IN_ANIMATION_DURATION = 400;
- private static final int INITIAL_ITEM_ANIMATION_DURATION = 150;
+ private static final int INITIAL_ITEM_ANIMATION_DURATION = 350;
// The degree to which the inner ring grows when accepting drop
private static final float INNER_RING_GROWTH_FACTOR = 0.15f;
@@ -295,7 +295,7 @@
// This will animate the first item from it's position as an icon into its
// position as the first item in the preview
- animateFirstItem(animateDrawable, DROP_IN_ANIMATION_DURATION);
+ animateFirstItem(animateDrawable, INITIAL_ITEM_ANIMATION_DURATION);
postDelayed(new Runnable() {
public void run() {
@@ -332,7 +332,7 @@
float finalAlpha = index < NUM_ITEMS_IN_PREVIEW ? 0.5f : 0f;
dragLayer.animateView(animateView, from, to, finalAlpha, scale, DROP_IN_ANIMATION_DURATION,
- new DecelerateInterpolator(2), new AccelerateInterpolator(2));
+ new DecelerateInterpolator(2), new AccelerateInterpolator(2), null, false);
postDelayed(new Runnable() {
public void run() {
addItem(item);