diff options
Diffstat (limited to 'src/com/android')
-rw-r--r-- | src/com/android/launcher3/LauncherAppWidgetHost.java | 3 | ||||
-rw-r--r-- | src/com/android/launcher3/LauncherModel.java | 14 |
2 files changed, 10 insertions, 7 deletions
diff --git a/src/com/android/launcher3/LauncherAppWidgetHost.java b/src/com/android/launcher3/LauncherAppWidgetHost.java index e32e0d9fe..c274f2ecd 100644 --- a/src/com/android/launcher3/LauncherAppWidgetHost.java +++ b/src/com/android/launcher3/LauncherAppWidgetHost.java @@ -79,7 +79,8 @@ public class LauncherAppWidgetHost extends AppWidgetHost { } protected void onProvidersChanged() { - mLauncher.getModel().loadAndBindWidgetsAndShortcuts(mLauncher, mLauncher); + mLauncher.getModel().loadAndBindWidgetsAndShortcuts(mLauncher, mLauncher, + true /* refresh */); if (!mProviderChangeListeners.isEmpty()) { for (Runnable callback : new ArrayList<>(mProviderChangeListeners)) { callback.run(); diff --git a/src/com/android/launcher3/LauncherModel.java b/src/com/android/launcher3/LauncherModel.java index 7fdd52327..f283c2f31 100644 --- a/src/com/android/launcher3/LauncherModel.java +++ b/src/com/android/launcher3/LauncherModel.java @@ -2867,7 +2867,7 @@ public class LauncherModel extends BroadcastReceiver final Callbacks callbacks = tryGetCallbacks(oldCallbacks); if (callbacks != null) { callbacks.bindAllApplications(added); - loadAndBindWidgetsAndShortcuts(mContext,callbacks); + loadAndBindWidgetsAndShortcuts(mContext, callbacks, true /* refresh */); if (DEBUG_LOADERS) { Log.d(TAG, "bound " + added.size() + " apps in " + (SystemClock.uptimeMillis() - bindTime) + "ms"); @@ -3228,9 +3228,10 @@ public class LauncherModel extends BroadcastReceiver } }); } - if (Build.VERSION.SDK_INT < 17) { - loadAndBindWidgetsAndShortcuts(context, callbacks); - } + + // onProvidersChanged method (API >= 17) already refreshed the widget list + loadAndBindWidgetsAndShortcuts(context, callbacks, Build.VERSION.SDK_INT < 17); + // Write all the logs to disk mHandler.post(new Runnable() { public void run() { @@ -3279,11 +3280,12 @@ public class LauncherModel extends BroadcastReceiver } } - public void loadAndBindWidgetsAndShortcuts(final Context context, final Callbacks callbacks) { + public void loadAndBindWidgetsAndShortcuts(final Context context, final Callbacks callbacks, + final boolean refresh) { runOnWorkerThread(new Runnable(){ @Override public void run() { - final ArrayList<Object> list = getWidgetsAndShortcuts(context, true /* refresh */); + final ArrayList<Object> list = getWidgetsAndShortcuts(context, refresh); mHandler.post(new Runnable() { @Override public void run() { |