From 75ae8d3bf9992440314a55f0ed3ff3285e6cd8fa Mon Sep 17 00:00:00 2001 From: Winson Chung Date: Sun, 19 Apr 2015 16:10:34 -0700 Subject: Notify data-set changed when new items are added/removed. - Temporarily use the full data-set changed call, when possible, we'll moved to the SortedList in the support lib which will take care of most of this for us. Bug: 20363676 --- .../android/launcher3/AlphabeticalAppsList.java | 36 ++-------------------- 1 file changed, 2 insertions(+), 34 deletions(-) diff --git a/src/com/android/launcher3/AlphabeticalAppsList.java b/src/com/android/launcher3/AlphabeticalAppsList.java index 8d1db632e..2ee5a62ed 100644 --- a/src/com/android/launcher3/AlphabeticalAppsList.java +++ b/src/com/android/launcher3/AlphabeticalAppsList.java @@ -239,17 +239,9 @@ public class AlphabeticalAppsList { for (AppInfo info : apps) { int removeIndex = findAppByComponent(mApps, info); if (removeIndex != -1) { - int sectionedIndex = mSectionedFilteredApps.indexOf(info); - int numAppsInSection = numAppsInSection(info); mApps.remove(removeIndex); onAppsUpdated(); - if (numAppsInSection == 1) { - // Remove the section and the icon - mAdapter.notifyItemRemoved(sectionedIndex - 1); - mAdapter.notifyItemRemoved(sectionedIndex - 1); - } else { - mAdapter.notifyItemRemoved(sectionedIndex); - } + mAdapter.notifyDataSetChanged(); } } } @@ -278,32 +270,8 @@ public class AlphabeticalAppsList { if (index < 0) { mApps.add(-(index + 1), info); onAppsUpdated(); - - int sectionedIndex = mSectionedFilteredApps.indexOf(info); - int numAppsInSection = numAppsInSection(info); - if (numAppsInSection == 1) { - // New section added along with icon - mAdapter.notifyItemInserted(sectionedIndex - 1); - mAdapter.notifyItemInserted(sectionedIndex - 1); - } else { - mAdapter.notifyItemInserted(sectionedIndex); - } - } - } - - /** - * Returns the number of apps in the section that the given info is in. - */ - private int numAppsInSection(AppInfo info) { - int appIndex = mFilteredApps.indexOf(info); - int appCount = 0; - for (SectionInfo section : mSections) { - if (appCount + section.numAppsInSection > appIndex) { - return section.numAppsInSection; - } - appCount += section.numAppsInSection; + mAdapter.notifyDataSetChanged(); } - return 1; } /** -- cgit v1.2.3