Fix for AST-170 - clear notifications when complete tasks

pull/14/head
Tim Su 16 years ago
parent e31cc41372
commit dffd0d1e11

@ -265,6 +265,23 @@ public class Notifications extends BroadcastReceiver {
notificationManager.notify(notificationId, notification);
}
/**
* Schedules alarms for a single task
*
* @param shouldPerformPropertyCheck
* whether to check if task has requisite properties
*/
public static void cancelNotifications(long taskId) {
if(notificationManager == null)
synchronized(Notifications.class) {
if(notificationManager == null)
notificationManager = new AndroidNotificationManager(
ContextManager.getContext());
}
notificationManager.cancel((int)taskId);
}
// --- notification manager
public static void setNotificationManager(

@ -21,6 +21,7 @@ import com.todoroo.astrid.api.AstridApiConstants;
import com.todoroo.astrid.dao.MetadataDao.MetadataCriteria;
import com.todoroo.astrid.model.Task;
import com.todoroo.astrid.provider.Astrid2TaskProvider;
import com.todoroo.astrid.reminders.Notifications;
import com.todoroo.astrid.reminders.ReminderService;
import com.todoroo.astrid.utility.Preferences;
import com.todoroo.astrid.widget.TasksWidget;
@ -245,6 +246,8 @@ public class TaskDao extends GenericDao<Task> {
Intent broadcastIntent = new Intent(AstridApiConstants.BROADCAST_EVENT_TASK_COMPLETED);
broadcastIntent.putExtra(AstridApiConstants.EXTRAS_TASK_ID, task.getId());
context.sendOrderedBroadcast(broadcastIntent, null);
Notifications.cancelNotifications(task.getId());
}
}

Loading…
Cancel
Save