Adding keyboard support to folders and fixing renaming rough edges

Change-Id: I62e1a5699e4c7e8d53f5f7d6331a854270a83aa1
diff --git a/src/com/android/launcher2/Launcher.java b/src/com/android/launcher2/Launcher.java
index 2997d68..02fccc5 100644
--- a/src/com/android/launcher2/Launcher.java
+++ b/src/com/android/launcher2/Launcher.java
@@ -1147,16 +1147,18 @@
             // also will cancel mWaitingForResult.
             closeSystemDialogs();
 
-            closeFolder();
-
             boolean alreadyOnHome = ((intent.getFlags() & Intent.FLAG_ACTIVITY_BROUGHT_TO_FRONT)
                         != Intent.FLAG_ACTIVITY_BROUGHT_TO_FRONT);
 
+            Folder openFolder = mWorkspace.getOpenFolder();
             // In all these cases, only animate if we're already on home
             mWorkspace.exitWidgetResizeMode();
-            if (alreadyOnHome && mState == State.WORKSPACE && !mWorkspace.isTouchActive()) {
+            if (alreadyOnHome && mState == State.WORKSPACE && !mWorkspace.isTouchActive() &&
+                    openFolder == null) {
                 mWorkspace.moveToDefaultScreen(true);
             }
+
+            closeFolder();
             exitSpringLoadedDragMode();
             showWorkspace(alreadyOnHome);
 
@@ -1876,6 +1878,9 @@
     public void closeFolder() {
         Folder folder = mWorkspace.getOpenFolder();
         if (folder != null) {
+            if (folder.isEditingName()) {
+                folder.dismissEditingName();
+            }
             closeFolder(folder);
 
             // Dismiss the folder cling