diff options
author | Sunny Goyal <sunnygoyal@google.com> | 2016-11-30 16:42:30 +0000 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2016-11-30 16:42:31 +0000 |
commit | b7f5431232f8f22ccb0d9f3d4ec5992d6776fd0d (patch) | |
tree | 6936e24d059ff06cf9c49bb7e5fa24547a2c9260 /src/com/android/launcher3/model | |
parent | 70fc828256e838befa80da97bbf159067f022cb9 (diff) | |
parent | 2bcbe13c642efa4c94df570441c700b7aa8e353d (diff) | |
download | android_packages_apps_Trebuchet-b7f5431232f8f22ccb0d9f3d4ec5992d6776fd0d.tar.gz android_packages_apps_Trebuchet-b7f5431232f8f22ccb0d9f3d4ec5992d6776fd0d.tar.bz2 android_packages_apps_Trebuchet-b7f5431232f8f22ccb0d9f3d4ec5992d6776fd0d.zip |
Merge "Moving ShortcutInfo creation in InstallShortcutReceiver to background thread" into ub-launcher3-master
Diffstat (limited to 'src/com/android/launcher3/model')
-rw-r--r-- | src/com/android/launcher3/model/AddWorkspaceItemsTask.java | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/src/com/android/launcher3/model/AddWorkspaceItemsTask.java b/src/com/android/launcher3/model/AddWorkspaceItemsTask.java index 986e163e6..97335cb25 100644 --- a/src/com/android/launcher3/model/AddWorkspaceItemsTask.java +++ b/src/com/android/launcher3/model/AddWorkspaceItemsTask.java @@ -33,26 +33,29 @@ import com.android.launcher3.LauncherSettings; import com.android.launcher3.ShortcutInfo; import com.android.launcher3.compat.UserHandleCompat; import com.android.launcher3.util.GridOccupancy; +import com.android.launcher3.util.Provider; import java.util.ArrayList; +import java.util.List; /** * Task to add auto-created workspace items. */ public class AddWorkspaceItemsTask extends ExtendedModelTask { - private final ArrayList<? extends ItemInfo> mWorkspaceApps; + private final Provider<List<ItemInfo>> mAppsProvider; /** - * @param workspaceApps items to add on the workspace + * @param appsProvider items to add on the workspace */ - public AddWorkspaceItemsTask(ArrayList<? extends ItemInfo> workspaceApps) { - mWorkspaceApps = workspaceApps; + public AddWorkspaceItemsTask(Provider<List<ItemInfo>> appsProvider) { + mAppsProvider = appsProvider; } @Override public void execute(LauncherAppState app, BgDataModel dataModel, AllAppsList apps) { - if (mWorkspaceApps.isEmpty()) { + List<ItemInfo> workspaceApps = mAppsProvider.get(); + if (workspaceApps.isEmpty()) { return; } Context context = app.getContext(); @@ -65,7 +68,7 @@ public class AddWorkspaceItemsTask extends ExtendedModelTask { // called. ArrayList<Long> workspaceScreens = LauncherModel.loadWorkspaceScreensDb(context); synchronized(dataModel) { - for (ItemInfo item : mWorkspaceApps) { + for (ItemInfo item : workspaceApps) { if (item instanceof ShortcutInfo) { // Short-circuit this logic if the icon exists somewhere on the workspace if (shortcutExists(dataModel, item.getIntent(), item.user)) { @@ -258,5 +261,4 @@ public class AddWorkspaceItemsTask extends ExtendedModelTask { } return occupied.findVacantCell(xy, spanX, spanY); } - } |