diff options
author | Hyunyoung Song <hyunyoungs@google.com> | 2015-06-17 21:12:44 -0700 |
---|---|---|
committer | Hyunyoung Song <hyunyoungs@google.com> | 2015-06-17 21:12:44 -0700 |
commit | eaf291b9feba4e332d258b6d53ff119c88dc0d39 (patch) | |
tree | d9419f772bd062c45098e509b0d96de45fba5897 /src/com/android/launcher3/LauncherModel.java | |
parent | d730f9d74f87b90616e0f0a9c7b6a4c78976f41a (diff) | |
download | android_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.java | 14 |
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, |