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 ffddccf0d..0041bb4d6 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 56aa69e5c..ef00a8d60 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 67b8e6d95..3d2ffb4ff 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 fce902e49..969798530 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 a1c2f0a05..189c69076 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); } -- 2.11.0