From 0057bbcfa4a2ee12c5e87cba8c3fac8eadb078ed Mon Sep 17 00:00:00 2001 From: Adam Cohen Date: Fri, 12 Aug 2011 18:30:51 -0700 Subject: [PATCH] Minor code cleanup, addresses issues raised in issue 5097504 Change-Id: Ib409e96986b43d0c919256b6a2584ef515c93dae --- src/com/android/launcher2/Folder.java | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/com/android/launcher2/Folder.java b/src/com/android/launcher2/Folder.java index c490d5e6dc..1fcfebc5ad 100644 --- a/src/com/android/launcher2/Folder.java +++ b/src/com/android/launcher2/Folder.java @@ -297,13 +297,19 @@ public class Folder extends LinearLayout implements DragSource, View.OnClickList ArrayList children = info.contents; ArrayList overflow = new ArrayList(); setupContentForNumItems(children.size()); + int count = 0; for (int i = 0; i < children.size(); i++) { ShortcutInfo child = (ShortcutInfo) children.get(i); if (!createAndAddShortcut(child)) { overflow.add(child); + } else { + count++; } } + // We rearrange the items in case there are any empty gaps + setupContentForNumItems(count); + // If our folder has too many items we prune them from the list. This is an issue // when upgrading from the old Folders implementation which could contain an unlimited // number of items. @@ -507,8 +513,8 @@ public class Folder extends LinearLayout implements DragSource, View.OnClickList // by another item. If it is, we need to find the next available slot and assign // it that position. This is an issue when upgrading from the old Folders implementation // which could contain an unlimited number of items. - if (mContent.getChildAt(item.cellX, item.cellY) != null || - item.cellX < 0 || item.cellY < 0) { + if (mContent.getChildAt(item.cellX, item.cellY) != null || item.cellX < 0 || item.cellY < 0 + || item.cellX >= mContent.getCountX() || item.cellY >= mContent.getCountY()) { if (!findAndSetEmptyCells(item)) { return false; }