From 4e54a4cfa50838ea0a970fea2632851bcb16e2c0 Mon Sep 17 00:00:00 2001 From: Jon Miranda Date: Tue, 23 May 2017 11:45:17 -0700 Subject: [PATCH] Fix bug where item was not moved in database when added to a Folder. I thought calling arrangeChildren(saveChanges=true) would handle this case, but because we set the position and rank in addViewForRank, arrangeChildren does not see any changes to save. Change-Id: Iab0fefe6da7711857ea05955a3243459f4e8527b --- src/com/android/launcher3/folder/Folder.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/com/android/launcher3/folder/Folder.java b/src/com/android/launcher3/folder/Folder.java index 8dcf5c914e..80338ca721 100644 --- a/src/com/android/launcher3/folder/Folder.java +++ b/src/com/android/launcher3/folder/Folder.java @@ -1437,6 +1437,9 @@ public class Folder extends AbstractFloatingView implements DragSource, View.OnC @Override public void onAdd(ShortcutInfo item, int rank) { View view = mContent.createAndAddViewForRank(item, rank); + mLauncher.getModelWriter().addOrMoveItemInDatabase(item, mInfo.id, 0, item.cellX, + item.cellY); + ArrayList items = new ArrayList<>(getItemsInReadingOrder()); items.add(rank, view); mContent.arrangeChildren(items, items.size());