From c534632c52dee762b1b0f64554eea86364b3d496 Mon Sep 17 00:00:00 2001 From: Alex Baker Date: Wed, 1 May 2024 09:50:31 -0500 Subject: [PATCH] Pass uuid to TaskAdapter.onCompletedTask --- .../com/todoroo/astrid/activity/TaskListFragment.kt | 2 +- .../com/todoroo/astrid/adapter/AstridTaskAdapter.kt | 11 +++++------ .../java/com/todoroo/astrid/adapter/TaskAdapter.kt | 2 +- 3 files changed, 7 insertions(+), 8 deletions(-) diff --git a/app/src/main/java/com/todoroo/astrid/activity/TaskListFragment.kt b/app/src/main/java/com/todoroo/astrid/activity/TaskListFragment.kt index 045dfff5e..7eeafe2ef 100644 --- a/app/src/main/java/com/todoroo/astrid/activity/TaskListFragment.kt +++ b/app/src/main/java/com/todoroo/astrid/activity/TaskListFragment.kt @@ -907,7 +907,7 @@ class TaskListFragment : Fragment(), OnRefreshListener, Toolbar.OnMenuItemClickL } lifecycleScope.launch { taskCompleter.setComplete(task.task, newState) - taskAdapter.onCompletedTask(task, newState) + taskAdapter.onCompletedTask(task.uuid, newState) loadTaskListContent() } } diff --git a/app/src/main/java/com/todoroo/astrid/adapter/AstridTaskAdapter.kt b/app/src/main/java/com/todoroo/astrid/adapter/AstridTaskAdapter.kt index 1cdda13c0..2464360cd 100644 --- a/app/src/main/java/com/todoroo/astrid/adapter/AstridTaskAdapter.kt +++ b/app/src/main/java/com/todoroo/astrid/adapter/AstridTaskAdapter.kt @@ -66,11 +66,10 @@ class AstridTaskAdapter internal constructor( override suspend fun onTaskDeleted(task: Task) = updater.onDeleteTask(list, filter, task.uuid) - override suspend fun onCompletedTask(task: TaskContainer, newState: Boolean) { - val itemId = task.uuid + override suspend fun onCompletedTask(uuid: String, newState: Boolean) { val completionDate = if (newState) DateUtilities.now() else 0 if (!newState) { - val chained = chainedCompletions[itemId] + val chained = chainedCompletions[uuid] if (chained != null) { for (taskId in chained) { taskDao.setCompletionDate(taskId, completionDate) @@ -79,7 +78,7 @@ class AstridTaskAdapter internal constructor( return } val chained = ArrayList() - updater.applyToDescendants(itemId) { node: SubtasksFilterUpdater.Node -> + updater.applyToDescendants(uuid) { node: SubtasksFilterUpdater.Node -> val uuid = node.uuid taskDao.setCompletionDate(uuid, completionDate) chained.add(node.uuid) @@ -90,14 +89,14 @@ class AstridTaskAdapter internal constructor( var madeChanges = false for (t in tasks) { if (!isNullOrEmpty(t.recurrence)) { - updater.moveToParentOf(t.uuid, itemId) + updater.moveToParentOf(t.uuid, uuid) madeChanges = true } } if (madeChanges) { updater.writeSerialization(list, updater.serializeTree()) } - chainedCompletions[itemId] = chained + chainedCompletions[uuid] = chained } } diff --git a/app/src/main/java/com/todoroo/astrid/adapter/TaskAdapter.kt b/app/src/main/java/com/todoroo/astrid/adapter/TaskAdapter.kt index 23ea59d5c..4338a51da 100644 --- a/app/src/main/java/com/todoroo/astrid/adapter/TaskAdapter.kt +++ b/app/src/main/java/com/todoroo/astrid/adapter/TaskAdapter.kt @@ -151,7 +151,7 @@ open class TaskAdapter( fun getItemUuid(position: Int): String = getTask(position).uuid - open suspend fun onCompletedTask(task: TaskContainer, newState: Boolean) {} + open suspend fun onCompletedTask(uuid: String, newState: Boolean) {} open suspend fun onTaskCreated(uuid: String) {}