summaryrefslogtreecommitdiffstats
path: root/src/com/android/launcher3/LauncherModel.java
diff options
context:
space:
mode:
authorHyunyoung Song <hyunyoungs@google.com>2015-06-17 21:12:44 -0700
committerHyunyoung Song <hyunyoungs@google.com>2015-06-17 21:12:44 -0700
commiteaf291b9feba4e332d258b6d53ff119c88dc0d39 (patch)
treed9419f772bd062c45098e509b0d96de45fba5897 /src/com/android/launcher3/LauncherModel.java
parentd730f9d74f87b90616e0f0a9c7b6a4c78976f41a (diff)
downloadandroid_packages_apps_Trebuchet-eaf291b9feba4e332d258b6d53ff119c88dc0d39.tar.gz
android_packages_apps_Trebuchet-eaf291b9feba4e332d258b6d53ff119c88dc0d39.tar.bz2
android_packages_apps_Trebuchet-eaf291b9feba4e332d258b6d53ff119c88dc0d39.zip
Widgets model should respect AppFilter.
> This pattern is already used in AllAppsList > mBgWidgetsModel variable cleanup inside LauncherModel. b/21739736 Change-Id: I03a05064ce3c3e5effb09055af9f4d4de2811c95
Diffstat (limited to 'src/com/android/launcher3/LauncherModel.java')
-rw-r--r--src/com/android/launcher3/LauncherModel.java14
1 files changed, 7 insertions, 7 deletions
diff --git a/src/com/android/launcher3/LauncherModel.java b/src/com/android/launcher3/LauncherModel.java
index a132e919a..b148b06e0 100644
--- a/src/com/android/launcher3/LauncherModel.java
+++ b/src/com/android/launcher3/LauncherModel.java
@@ -242,6 +242,7 @@ public class LauncherModel extends BroadcastReceiver
mApp = app;
mBgAllAppsList = new AllAppsList(iconCache, appFilter);
+ mBgWidgetsModel = new WidgetsModel(context, iconCache, appFilter);
mIconCache = iconCache;
final Resources res = context.getResources();
@@ -3346,10 +3347,12 @@ public class LauncherModel extends BroadcastReceiver
public void loadAndBindWidgetsAndShortcuts(final Context context, final Callbacks callbacks,
final boolean refresh) {
- runOnWorkerThread(new Runnable(){
+ runOnWorkerThread(new Runnable() {
@Override
public void run() {
- final WidgetsModel model = createWidgetsModel(context, refresh);
+ updateWidgetsModel(context, refresh);
+ final WidgetsModel model = mBgWidgetsModel.clone();
+
mHandler.post(new Runnable() {
@Override
public void run() {
@@ -3359,7 +3362,6 @@ public class LauncherModel extends BroadcastReceiver
}
}
});
- mBgWidgetsModel = model;
// update the Widget entries inside DB on the worker thread.
LauncherAppState.getInstance().getWidgetCache().removeObsoletePreviews(
model.getRawList());
@@ -3372,15 +3374,13 @@ public class LauncherModel extends BroadcastReceiver
*
* @see #loadAndBindWidgetsAndShortcuts
*/
- @Thunk WidgetsModel createWidgetsModel(Context context, boolean refresh) {
+ @Thunk void updateWidgetsModel(Context context, boolean refresh) {
PackageManager packageManager = context.getPackageManager();
final ArrayList<Object> widgetsAndShortcuts = new ArrayList<Object>();
widgetsAndShortcuts.addAll(getWidgetProviders(context, refresh));
Intent shortcutsIntent = new Intent(Intent.ACTION_CREATE_SHORTCUT);
widgetsAndShortcuts.addAll(packageManager.queryIntentActivities(shortcutsIntent, 0));
- WidgetsModel model = new WidgetsModel(context);
- model.addWidgetsAndShortcuts(widgetsAndShortcuts);
- return model;
+ mBgWidgetsModel.setWidgetsAndShortcuts(widgetsAndShortcuts);
}
@Thunk static boolean isPackageDisabled(Context context, String packageName,