diff options
Diffstat (limited to 'src/com/android/launcher3/AppsCustomizePagedView.java')
-rw-r--r-- | src/com/android/launcher3/AppsCustomizePagedView.java | 82 |
1 files changed, 47 insertions, 35 deletions
diff --git a/src/com/android/launcher3/AppsCustomizePagedView.java b/src/com/android/launcher3/AppsCustomizePagedView.java index 0a125e63b..5c298ef4e 100644 --- a/src/com/android/launcher3/AppsCustomizePagedView.java +++ b/src/com/android/launcher3/AppsCustomizePagedView.java @@ -210,7 +210,6 @@ public class AppsCustomizePagedView extends PagedViewWithDraggableItems implemen private ArrayList<AppInfo> mApps; private ArrayList<Object> mWidgets; - private ArrayList<AppInfo> mFilteredApps; private ArrayList<Object> mFilteredWidgets; private ArrayList<ComponentName> mProtectedApps; private ArrayList<String> mProtectedPackages; @@ -1502,6 +1501,53 @@ public class AppsCustomizePagedView extends PagedViewWithDraggableItems implemen mSaveInstanceStateItemIndex = -1; } + private void onTransitionPrepare() { + mIsSwitchingState = true; + + // Invalidate here to ensure that the pages are rendered during the state change transition. + invalidate(); + + enableHwLayersOnVisiblePages(); + } + + private void onTransitionEnd() { + mIsSwitchingState = false; + } + + public Comparator<AppInfo> getComparatorForSortMode() { + switch (mSortMode) { + case Title: + return LauncherModel.getAppNameComparator(); + case LaunchCount: + return LauncherModel.getAppLaunchCountComparator(mLauncher.getStats()); + case InstallTime: + return LauncherModel.APP_INSTALL_TIME_COMPARATOR; + } + return LauncherModel.getAppNameComparator(); + } + + public void setSortMode(SortMode sortMode) { + if (mSortMode == sortMode) return; + + mSortMode = sortMode; + + sortApps(); + } + + public void sortApps() { + Collections.sort(mApps, getComparatorForSortMode()); + + if (mContentType == ContentType.Applications) { + for (int i = 0; i < getChildCount(); i++) { + syncAppsPageItems(i, true); + } + } + } + + public SortMode getSortMode() { + return mSortMode; + } + /* * AllAppsView implementation */ @@ -1713,38 +1759,4 @@ public class AppsCustomizePagedView extends PagedViewWithDraggableItems implemen return String.format(getContext().getString(stringId), page + 1, count); } - - public Comparator<AppInfo> getComparatorForSortMode() { - switch (mSortMode) { - case Title: - return LauncherModel.getAppNameComparator(); - case LaunchCount: - return LauncherModel.getAppLaunchCountComparator(mLauncher.getStats()); - case InstallTime: - return LauncherModel.APP_INSTALL_TIME_COMPARATOR; - } - return LauncherModel.getAppNameComparator(); - } - - public void setSortMode(SortMode sortMode) { - if (mSortMode == sortMode) return; - - mSortMode = sortMode; - - sortApps(); - } - - public void sortApps() { - Collections.sort(new ArrayList<AppInfo>(), getComparatorForSortMode()); - - if (mContentType == ContentType.Applications) { - for (int i = 0; i < getChildCount(); i++) { - syncAppsPageItems(i, true); - } - } - } - - public SortMode getSortMode() { - return mSortMode; - } } |