diff --git a/src/com/android/launcher2/Launcher.java b/src/com/android/launcher2/Launcher.java
index 3c2c3da..e4ed31f 100644
--- a/src/com/android/launcher2/Launcher.java
+++ b/src/com/android/launcher2/Launcher.java
@@ -77,10 +77,10 @@
 import android.view.View;
 import android.view.View.OnLongClickListener;
 import android.view.ViewGroup;
-import android.view.ViewParent;
 import android.view.WindowManager;
 import android.view.accessibility.AccessibilityEvent;
 import android.view.animation.AccelerateDecelerateInterpolator;
+import android.view.animation.AccelerateInterpolator;
 import android.view.animation.DecelerateInterpolator;
 import android.view.inputmethod.InputMethodManager;
 import android.widget.Advanceable;
@@ -162,7 +162,7 @@
     static final int APPWIDGET_HOST_ID = 1024;
     private static final int EXIT_SPRINGLOADED_MODE_SHORT_TIMEOUT = 300;
     private static final int EXIT_SPRINGLOADED_MODE_LONG_TIMEOUT = 600;
-    private static final int SHOW_CLING_DURATION = 250;
+    private static final int SHOW_CLING_DURATION = 550;
     private static final int DISMISS_CLING_DURATION = 250;
 
     private static final Object sLock = new Object();
@@ -1770,8 +1770,6 @@
         final FolderInfo info = folderIcon.mInfo;
         Folder openFolder = mWorkspace.getFolderForTag(info);
 
-        Cling cling = showFirstRunFoldersCling();
-
         // If the folder info reports that the associated folder is open, then verify that
         // it is actually opened. There have been a few instances where this gets out of sync.
         if (info.opened && openFolder == null) {
@@ -1800,10 +1798,6 @@
                 }
             }
         }
-
-        if (cling != null) {
-            cling.bringToFront();
-        }
     }
 
     private void growAndFadeOutFolderIcon(FolderIcon fi) {
@@ -3102,7 +3096,7 @@
                 cling.setAlpha(0f);
                 cling.animate()
                     .alpha(1f)
-                    .setInterpolator(new DecelerateInterpolator())
+                    .setInterpolator(new AccelerateInterpolator())
                     .setDuration(SHOW_CLING_DURATION)
                     .setStartDelay(delay)
                     .start();
