From 608d0dba8717326319800a78cfa85f3ad08b9549 Mon Sep 17 00:00:00 2001 From: Jon Miranda Date: Tue, 28 Feb 2017 13:15:28 -0800 Subject: [PATCH] Close Folder before doing any automatic updates. We already close the Folder when Work Profile apps are auto added to the Work Profile Folder. This change extends that functionality to when apps are being auto removed from the Work Profile Folder. Bug: 35845161 Change-Id: I2aa6a6a0ed28a95f6a59a549430f91482583548b --- src/com/android/launcher3/FolderInfo.java | 6 +++--- src/com/android/launcher3/Workspace.java | 4 +++- src/com/android/launcher3/folder/Folder.java | 2 +- src/com/android/launcher3/folder/FolderIcon.java | 2 +- src/com/android/launcher3/util/ManagedProfileHeuristic.java | 2 +- 5 files changed, 9 insertions(+), 7 deletions(-) diff --git a/src/com/android/launcher3/FolderInfo.java b/src/com/android/launcher3/FolderInfo.java index ffddccf0dc..0041bb4d63 100644 --- a/src/com/android/launcher3/FolderInfo.java +++ b/src/com/android/launcher3/FolderInfo.java @@ -114,9 +114,9 @@ public class FolderInfo extends ItemInfo { } } - public void prepareAutoAdd() { + public void prepareAutoUpdate() { for (int i = 0; i < listeners.size(); i++) { - listeners.get(i).prepareAutoAdd(); + listeners.get(i).prepareAutoUpdate(); } } @@ -125,7 +125,7 @@ public class FolderInfo extends ItemInfo { public void onRemove(ShortcutInfo item); public void onTitleChanged(CharSequence title); public void onItemsChanged(boolean animate); - public void prepareAutoAdd(); + public void prepareAutoUpdate(); } public boolean hasOption(int optionFlag) { diff --git a/src/com/android/launcher3/Workspace.java b/src/com/android/launcher3/Workspace.java index 56aa69e5cd..ef00a8d60a 100644 --- a/src/com/android/launcher3/Workspace.java +++ b/src/com/android/launcher3/Workspace.java @@ -3885,7 +3885,9 @@ public class Workspace extends PagedView // The item may belong to a folder. View parent = idToViewMap.get(itemToRemove.container); if (parent != null) { - ((FolderInfo) parent.getTag()).remove((ShortcutInfo) itemToRemove, false); + FolderInfo folderInfo = (FolderInfo) parent.getTag(); + folderInfo.prepareAutoUpdate(); + folderInfo.remove((ShortcutInfo) itemToRemove, false); } } } diff --git a/src/com/android/launcher3/folder/Folder.java b/src/com/android/launcher3/folder/Folder.java index 67b8e6d956..3d2ffb4ff0 100644 --- a/src/com/android/launcher3/folder/Folder.java +++ b/src/com/android/launcher3/folder/Folder.java @@ -1413,7 +1413,7 @@ public class Folder extends AbstractFloatingView implements DragSource, View.OnC } @Override - public void prepareAutoAdd() { + public void prepareAutoUpdate() { close(false); } diff --git a/src/com/android/launcher3/folder/FolderIcon.java b/src/com/android/launcher3/folder/FolderIcon.java index fce902e495..9697985305 100644 --- a/src/com/android/launcher3/folder/FolderIcon.java +++ b/src/com/android/launcher3/folder/FolderIcon.java @@ -981,7 +981,7 @@ public class FolderIcon extends FrameLayout implements FolderListener { } @Override - public void prepareAutoAdd() { + public void prepareAutoUpdate() { } @Override diff --git a/src/com/android/launcher3/util/ManagedProfileHeuristic.java b/src/com/android/launcher3/util/ManagedProfileHeuristic.java index a1c2f0a056..189c690769 100644 --- a/src/com/android/launcher3/util/ManagedProfileHeuristic.java +++ b/src/com/android/launcher3/util/ManagedProfileHeuristic.java @@ -163,7 +163,7 @@ public class ManagedProfileHeuristic { @Override public void run() { - workFolder.prepareAutoAdd(); + workFolder.prepareAutoUpdate(); for (ShortcutInfo info : workFolderApps) { workFolder.add(info, false); }