diff options
author | Sunny Goyal <sunnygoyal@google.com> | 2017-06-02 13:46:55 -0700 |
---|---|---|
committer | Sunny Goyal <sunnygoyal@google.com> | 2017-06-02 14:27:29 -0700 |
commit | c6e97692e4144a6fc33eb74fabb73b1aae9ff908 (patch) | |
tree | 4eeec70c61cab02f800b0693ed53be237240bf1e /src/com/android/launcher3/model/LoaderResults.java | |
parent | ccb25a3da88a0e68039f8fa15c9709b181f4e2e8 (diff) | |
download | android_packages_apps_Trebuchet-c6e97692e4144a6fc33eb74fabb73b1aae9ff908.tar.gz android_packages_apps_Trebuchet-c6e97692e4144a6fc33eb74fabb73b1aae9ff908.tar.bz2 android_packages_apps_Trebuchet-c6e97692e4144a6fc33eb74fabb73b1aae9ff908.zip |
Moving LoaderTask static
Will move it to a separate file in a followup cl.
This simplifies dependencies between LauncherModel and LoaderTask which
and making it easier to start the loader before Launcher activity is
created (as the Callbacks in LauncherModel can change while loader is running).
Bug: 34112546
Bug: 37616877
Change-Id: Ie9619c6b0de0e3eb60657c04ae1b58d946c829e9
Diffstat (limited to 'src/com/android/launcher3/model/LoaderResults.java')
-rw-r--r-- | src/com/android/launcher3/model/LoaderResults.java | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/src/com/android/launcher3/model/LoaderResults.java b/src/com/android/launcher3/model/LoaderResults.java index 61fd356b8..28df64d39 100644 --- a/src/com/android/launcher3/model/LoaderResults.java +++ b/src/com/android/launcher3/model/LoaderResults.java @@ -24,6 +24,7 @@ import com.android.launcher3.InvariantDeviceProfile; import com.android.launcher3.ItemInfo; import com.android.launcher3.LauncherAppState; import com.android.launcher3.LauncherAppWidgetInfo; +import com.android.launcher3.LauncherModel; import com.android.launcher3.LauncherModel.Callbacks; import com.android.launcher3.LauncherSettings; import com.android.launcher3.MainThreadExecutor; @@ -58,6 +59,7 @@ public class LoaderResults { private final BgDataModel mBgDataModel; private final AllAppsList mBgAllAppsList; private final int mPageToBindFirst; + private final WeakReference<Callbacks> mCallbacks; public LoaderResults(LauncherAppState app, BgDataModel dataModel, @@ -358,7 +360,6 @@ public class LoaderResults { mUiExecutor.execute(r); } - public void bindAllApps() { // shallow copy @SuppressWarnings("unchecked") @@ -374,4 +375,18 @@ public class LoaderResults { }; mUiExecutor.execute(r); } + + public void bindWidgets() { + final MultiHashMap<PackageItemInfo, WidgetItem> widgets + = mBgDataModel.widgetsModel.getWidgetsMap(); + Runnable r = new Runnable() { + public void run() { + Callbacks callbacks = mCallbacks.get(); + if (callbacks != null) { + callbacks.bindAllWidgets(widgets); + } + } + }; + mUiExecutor.execute(r); + } } |