From 43d8157386ef20d6c4f8e9b4b35a9a9a3a257301 Mon Sep 17 00:00:00 2001 From: Tim Su Date: Sat, 20 Nov 2010 15:18:54 -0800 Subject: [PATCH] widget in background service --- .../src/com/todoroo/astrid/widget/TasksWidget.java | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/astrid/src/com/todoroo/astrid/widget/TasksWidget.java b/astrid/src/com/todoroo/astrid/widget/TasksWidget.java index be83f56ce..d14187bab 100644 --- a/astrid/src/com/todoroo/astrid/widget/TasksWidget.java +++ b/astrid/src/com/todoroo/astrid/widget/TasksWidget.java @@ -97,9 +97,17 @@ public class TasksWidget extends AppWidgetProvider { TaskService taskService; @Override - public void onStart(Intent intent, int startId) { + public void onStart(final Intent intent, int startId) { ContextManager.setContext(this); + new Thread(new Runnable() { + @Override + public void run() { + startServiceInBackgroundThread(intent); + } + }).start(); + } + public void startServiceInBackgroundThread(Intent intent) { ComponentName thisWidget = new ComponentName(this, TasksWidget.class); AppWidgetManager manager = AppWidgetManager.getInstance(this); @@ -117,6 +125,8 @@ public class TasksWidget extends AppWidgetProvider { RemoteViews updateViews = buildUpdate(this, id); manager.updateAppWidget(id, updateViews); } + + stopSelf(); } @Override