summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAdam Cohen <adamcohen@google.com>2011-07-03 23:40:28 -0700
committerAdam Cohen <adamcohen@google.com>2011-07-04 23:56:03 -0700
commit95bb800de9b0142bea0110b074eddbcf0e475736 (patch)
tree5558ff8aac6fb41856cf82c76e2f8a3f0fbdb0ad
parentec228e7fa313ce0e4aba4add9354979a297ab30d (diff)
downloadandroid_packages_apps_Trebuchet-95bb800de9b0142bea0110b074eddbcf0e475736.tar.gz
android_packages_apps_Trebuchet-95bb800de9b0142bea0110b074eddbcf0e475736.tar.bz2
android_packages_apps_Trebuchet-95bb800de9b0142bea0110b074eddbcf0e475736.zip
Folders now close in various situations where we want them to:
-> When pressing home, from app or from home -> When rotating (as per design request) -> When scrolling to another page Change-Id: I3b96b216f1ec5da07cd95d2541999866a1c1424e
-rw-r--r--src/com/android/launcher2/Folder.java2
-rw-r--r--src/com/android/launcher2/Launcher.java31
-rw-r--r--src/com/android/launcher2/Workspace.java8
3 files changed, 12 insertions, 29 deletions
diff --git a/src/com/android/launcher2/Folder.java b/src/com/android/launcher2/Folder.java
index 13815adbc..347eba045 100644
--- a/src/com/android/launcher2/Folder.java
+++ b/src/com/android/launcher2/Folder.java
@@ -648,7 +648,7 @@ public class Folder extends LinearLayout implements DragSource, OnItemLongClickL
}
};
- private void completeDragExit() {
+ public void completeDragExit() {
mLauncher.closeFolder();
mCurrentDragInfo = null;
mCurrentDragView = null;
diff --git a/src/com/android/launcher2/Launcher.java b/src/com/android/launcher2/Launcher.java
index 36ff2b2ef..93fab97a3 100644
--- a/src/com/android/launcher2/Launcher.java
+++ b/src/com/android/launcher2/Launcher.java
@@ -148,8 +148,6 @@ public final class Launcher extends Activity
private static final String RUNTIME_STATE_CURRENT_SCREEN = "launcher.current_screen";
// Type: int
private static final String RUNTIME_STATE = "launcher.state";
- // Type: long
- private static final String RUNTIME_STATE_FOLDERS = "launcher.folder";
// Type: int
private static final String RUNTIME_STATE_PENDING_ADD_SCREEN = "launcher.add_screen";
// Type: int
@@ -1266,6 +1264,8 @@ public final class Launcher extends Activity
// also will cancel mWaitingForResult.
closeSystemDialogs();
+ closeFolder();
+
boolean alreadyOnHome = ((intent.getFlags() & Intent.FLAG_ACTIVITY_BROUGHT_TO_FRONT)
!= Intent.FLAG_ACTIVITY_BROUGHT_TO_FRONT);
@@ -1300,15 +1300,7 @@ public final class Launcher extends Activity
@Override
protected void onSaveInstanceState(Bundle outState) {
outState.putInt(RUNTIME_STATE_CURRENT_SCREEN, mWorkspace.getCurrentPage());
-
- final Folder folder = mWorkspace.getOpenFolder();
- if (folder != null) {
- long[] ids = new long[1];
- ids[0] = folder.getInfo().id;
- outState.putLongArray(RUNTIME_STATE_FOLDERS, ids);
- } else {
- super.onSaveInstanceState(outState);
- }
+ super.onSaveInstanceState(outState);
outState.putInt(RUNTIME_STATE, mState.ordinal());
@@ -3096,23 +3088,6 @@ public final class Launcher extends Activity
if (!mWorkspace.hasFocus()) {
mWorkspace.getChildAt(mWorkspace.getCurrentPage()).requestFocus();
}
-
- final long[] folders = mSavedState.getLongArray(RUNTIME_STATE_FOLDERS);
- if (folders != null) {
- for (long folderId : folders) {
- final FolderInfo info = sFolders.get(folderId);
- final FolderIcon folderIcon = (FolderIcon)
- mWorkspace.getViewForTag(info);
- if (folderIcon != null) {
- openFolder(folderIcon);
- }
- }
- final Folder openFolder = mWorkspace.getOpenFolder();
- if (openFolder != null) {
- openFolder.requestFocus();
- }
- }
-
mSavedState = null;
}
diff --git a/src/com/android/launcher2/Workspace.java b/src/com/android/launcher2/Workspace.java
index a79c779a4..ab6712db6 100644
--- a/src/com/android/launcher2/Workspace.java
+++ b/src/com/android/launcher2/Workspace.java
@@ -3025,6 +3025,10 @@ public class Workspace extends SmoothPagedView
if (!mIsSmall && !mIsInUnshrinkAnimation) {
super.scrollLeft();
}
+ Folder openFolder = getOpenFolder();
+ if (openFolder != null) {
+ openFolder.completeDragExit();
+ }
}
@Override
@@ -3032,6 +3036,10 @@ public class Workspace extends SmoothPagedView
if (!mIsSmall && !mIsInUnshrinkAnimation) {
super.scrollRight();
}
+ Folder openFolder = getOpenFolder();
+ if (openFolder != null) {
+ openFolder.completeDragExit();
+ }
}
@Override