diff --git a/app/src/main/java/com/todoroo/astrid/service/TaskCompleter.java b/app/src/main/java/com/todoroo/astrid/service/TaskCompleter.java index 601e8baae..5576a627d 100644 --- a/app/src/main/java/com/todoroo/astrid/service/TaskCompleter.java +++ b/app/src/main/java/com/todoroo/astrid/service/TaskCompleter.java @@ -37,7 +37,7 @@ public class TaskCompleter { long completionDate = completed ? now() : 0L; setComplete(singletonList(item), completionDate); setComplete(googleTaskDao.getChildTasks(item.getId()), completionDate); - List caldavChildren = caldavDao.getChildren(singletonList(item.getId())); + List caldavChildren = caldavDao.getChildren(item.getId()); if (!caldavChildren.isEmpty()) { setComplete(taskDao.fetch(caldavChildren), completionDate); } diff --git a/app/src/main/java/org/tasks/data/CaldavDao.java b/app/src/main/java/org/tasks/data/CaldavDao.java index 73951442f..665971ec3 100644 --- a/app/src/main/java/org/tasks/data/CaldavDao.java +++ b/app/src/main/java/org/tasks/data/CaldavDao.java @@ -117,6 +117,10 @@ public abstract class CaldavDao { @Query("UPDATE caldav_tasks SET cd_parent = IFNULL((SELECT cd_task FROM caldav_tasks AS p WHERE p.cd_remote_id = caldav_tasks.cd_remote_parent), cd_parent) WHERE cd_calendar = :calendar AND cd_remote_parent IS NOT NULL and cd_remote_parent != ''") public abstract void updateParents(String calendar); + public List getChildren(long id) { + return getChildren(Collections.singletonList(id)); + } + public List getChildren(List ids) { return atLeastLollipop() ? getChildrenRecursive(ids)