summaryrefslogtreecommitdiffstats
path: root/src/com/android/launcher3/Launcher.java
diff options
context:
space:
mode:
authorSunny Goyal <sunnygoyal@google.com>2015-04-16 22:38:55 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2015-04-16 22:39:00 +0000
commitfb9ca2392894a3dea83570267f9597ac0750b9fd (patch)
treedbeffeec160b8753ddbe5e970936660cec315eba /src/com/android/launcher3/Launcher.java
parentfc3c1edf7bbc3f7cb23e79520731d13ccc2da046 (diff)
parentf406615354a92367481a60966b6b873cae37fe4c (diff)
downloadandroid_packages_apps_Trebuchet-fb9ca2392894a3dea83570267f9597ac0750b9fd.tar.gz
android_packages_apps_Trebuchet-fb9ca2392894a3dea83570267f9597ac0750b9fd.tar.bz2
android_packages_apps_Trebuchet-fb9ca2392894a3dea83570267f9597ac0750b9fd.zip
Merge "Fixing drag-n-drop for folders in hotseat." into ub-launcher3-burnaby
Diffstat (limited to 'src/com/android/launcher3/Launcher.java')
-rw-r--r--src/com/android/launcher3/Launcher.java12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/com/android/launcher3/Launcher.java b/src/com/android/launcher3/Launcher.java
index 5679dfc53..3d8cf31c7 100644
--- a/src/com/android/launcher3/Launcher.java
+++ b/src/com/android/launcher3/Launcher.java
@@ -3112,10 +3112,19 @@ public class Launcher extends Activity
*/
public void openFolder(FolderIcon folderIcon) {
Folder folder = folderIcon.getFolder();
+ Folder openFolder = mWorkspace != null ? mWorkspace.getOpenFolder() : null;
+ if (openFolder != null && openFolder != folder) {
+ // Close any open folder before opening a folder.
+ closeFolder();
+ }
+
FolderInfo info = folder.mInfo;
info.opened = true;
+ // While the folder is open, the position of the icon cannot change.
+ ((CellLayout.LayoutParams) folderIcon.getLayoutParams()).canReorder = false;
+
// Just verify that the folder hasn't already been added to the DragLayer.
// There was a one-off crash where the folder had a parent already.
if (folder.getParent() == null) {
@@ -3151,6 +3160,9 @@ public class Launcher extends Activity
if (parent != null) {
FolderIcon fi = (FolderIcon) mWorkspace.getViewForTag(folder.mInfo);
shrinkAndFadeInFolderIcon(fi);
+ if (fi != null) {
+ ((CellLayout.LayoutParams) fi.getLayoutParams()).canReorder = true;
+ }
}
folder.animateClosed();