diff options
author | Adam Cohen <adamcohen@google.com> | 2014-05-08 17:27:56 -0700 |
---|---|---|
committer | Adam Cohen <adamcohen@google.com> | 2014-05-09 15:05:53 -0700 |
commit | 689ff16ea27fb7c22c247aaf4f42ffe42fede253 (patch) | |
tree | 543505e8ed9d537c43fd7a20957d6d0ed6ed186b /src/com/android/launcher3/Folder.java | |
parent | 1317e2dd4a2fb097d1e54759536d515fdeca2c3e (diff) | |
download | android_packages_apps_Trebuchet-689ff16ea27fb7c22c247aaf4f42ffe42fede253.tar.gz android_packages_apps_Trebuchet-689ff16ea27fb7c22c247aaf4f42ffe42fede253.tar.bz2 android_packages_apps_Trebuchet-689ff16ea27fb7c22c247aaf4f42ffe42fede253.zip |
Cleanup pattern for removing the extra empty screen after drag operations
-> Fixes a couple bugs: issue 12179908, issue 12372657, issue 13287732
Change-Id: I24b5abe8e432ea331eeb77407120a8cec28f6376
Diffstat (limited to 'src/com/android/launcher3/Folder.java')
-rw-r--r-- | src/com/android/launcher3/Folder.java | 21 |
1 files changed, 5 insertions, 16 deletions
diff --git a/src/com/android/launcher3/Folder.java b/src/com/android/launcher3/Folder.java index dcc55af89..e900c2b5a 100644 --- a/src/com/android/launcher3/Folder.java +++ b/src/com/android/launcher3/Folder.java @@ -797,12 +797,6 @@ public class Folder extends LinearLayout implements DragSource, View.OnClickList } } - // This is kind of hacky, but in general, dropping on the workspace handles removing - // the extra screen, but dropping elsewhere (back to self, or onto delete) doesn't. - if (target != mLauncher.getWorkspace()) { - mLauncher.getWorkspace().removeExtraEmptyScreen(true, null); - } - mDeleteFolderOnDropCompleted = false; mDragInProgress = false; mItemAddedBackToSelfViaIcon = false; @@ -1176,20 +1170,15 @@ public class Folder extends LinearLayout implements DragSource, View.OnClickList public void onDrop(DragObject d) { Runnable cleanUpRunnable = null; - // If we are coming from All Apps space, we need to remove the extra empty screen (which is - // normally done in Workspace#onDropExternal, as well zoom back in. + // If we are coming from All Apps space, we defer removing the extra empty screen + // until the folder closes if (d.dragSource != mLauncher.getWorkspace() && !(d.dragSource instanceof Folder)) { cleanUpRunnable = new Runnable() { @Override public void run() { - mLauncher.getWorkspace().removeExtraEmptyScreen(false, new Runnable() { - @Override - public void run() { - mLauncher.exitSpringLoadedDragModeDelayed(true, - Launcher.EXIT_SPRINGLOADED_MODE_SHORT_TIMEOUT_FOLDER_CLOSE, - null); - } - }, CLOSE_FOLDER_DELAY_MS, false); + mLauncher.exitSpringLoadedDragModeDelayed(true, + Launcher.EXIT_SPRINGLOADED_MODE_SHORT_TIMEOUT, + null); } }; } |