diff --git a/app/src/main/java/org/tasks/LocalBroadcastManager.java b/app/src/main/java/org/tasks/LocalBroadcastManager.java index 651b94b0e..80015f9ee 100644 --- a/app/src/main/java/org/tasks/LocalBroadcastManager.java +++ b/app/src/main/java/org/tasks/LocalBroadcastManager.java @@ -77,6 +77,6 @@ public class LocalBroadcastManager { } public void reconfigureWidget(int appWidgetId) { - appWidgetManager.reconfigureWidget(appWidgetId); + appWidgetManager.reconfigureWidgets(appWidgetId); } } diff --git a/app/src/main/java/org/tasks/Tasks.java b/app/src/main/java/org/tasks/Tasks.java index e126b0df5..28b7403e9 100644 --- a/app/src/main/java/org/tasks/Tasks.java +++ b/app/src/main/java/org/tasks/Tasks.java @@ -29,6 +29,7 @@ import org.tasks.scheduling.CalendarNotificationIntentService; import org.tasks.scheduling.NotificationSchedulerIntentService; import org.tasks.scheduling.RefreshScheduler; import org.tasks.themes.ThemeBase; +import org.tasks.widget.AppWidgetManager; import timber.log.Timber; public class Tasks extends InjectingApplication implements Configuration.Provider { @@ -43,6 +44,7 @@ public class Tasks extends InjectingApplication implements Configuration.Provide @Inject Lazy refreshScheduler; @Inject Lazy geofenceApi; @Inject Lazy billingClient; + @Inject Lazy appWidgetManager; @Override public void onCreate() { @@ -88,6 +90,7 @@ public class Tasks extends InjectingApplication implements Configuration.Provide geofenceApi.get().registerAll(); FileHelper.delete(context, preferences.getCacheDirectory()); billingClient.get().queryPurchases(); + appWidgetManager.get().reconfigureWidgets(); } @Override diff --git a/app/src/main/java/org/tasks/widget/AppWidgetManager.java b/app/src/main/java/org/tasks/widget/AppWidgetManager.java index ff4c3d0c1..b85e6048b 100644 --- a/app/src/main/java/org/tasks/widget/AppWidgetManager.java +++ b/app/src/main/java/org/tasks/widget/AppWidgetManager.java @@ -22,10 +22,12 @@ public class AppWidgetManager { appWidgetManager.notifyAppWidgetViewDataChanged(getWidgetIds(), R.id.list_view); } - public void reconfigureWidget(int appWidgetId) { + public void reconfigureWidgets(int... appWidgetIds) { Intent intent = new Intent(context, TasksWidget.class); intent.setAction(android.appwidget.AppWidgetManager.ACTION_APPWIDGET_UPDATE); - intent.putExtra(android.appwidget.AppWidgetManager.EXTRA_APPWIDGET_IDS, new int[] { appWidgetId }); + intent.putExtra( + android.appwidget.AppWidgetManager.EXTRA_APPWIDGET_IDS, + appWidgetIds.length == 0 ? getWidgetIds() : appWidgetIds); context.sendBroadcast(intent); updateWidgets(); }