From 68542fce3847f181eb1d5c03159828dbf71596d7 Mon Sep 17 00:00:00 2001 From: Alex Baker Date: Sat, 3 Feb 2024 13:52:46 -0600 Subject: [PATCH] Fix repeat task toast displaying old due date --- .../com/todoroo/astrid/activity/TaskListFragment.kt | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) 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 ed35f96be..f96166cb2 100644 --- a/app/src/main/java/com/todoroo/astrid/activity/TaskListFragment.kt +++ b/app/src/main/java/com/todoroo/astrid/activity/TaskListFragment.kt @@ -42,6 +42,7 @@ import androidx.lifecycle.repeatOnLifecycle import androidx.recyclerview.widget.DefaultItemAnimator import androidx.recyclerview.widget.LinearLayoutManager import androidx.recyclerview.widget.RecyclerView +import androidx.room.withTransaction import androidx.swiperefreshlayout.widget.SwipeRefreshLayout import androidx.swiperefreshlayout.widget.SwipeRefreshLayout.OnRefreshListener import com.google.android.material.appbar.AppBarLayout @@ -63,6 +64,7 @@ import com.todoroo.astrid.api.FilterImpl import com.todoroo.astrid.api.GtasksFilter import com.todoroo.astrid.api.TagFilter import com.todoroo.astrid.core.BuiltInFilterExposer +import com.todoroo.astrid.dao.Database import com.todoroo.astrid.dao.TaskDao import com.todoroo.astrid.data.Task import com.todoroo.astrid.repeats.RepeatTaskHelper @@ -156,6 +158,7 @@ class TaskListFragment : Fragment(), OnRefreshListener, Toolbar.OnMenuItemClickL @Inject lateinit var repeatTaskHelper: RepeatTaskHelper @Inject lateinit var taskListEventBus: TaskListEventBus @Inject lateinit var taskEditEventBus: TaskEditEventBus + @Inject lateinit var database: Database private val listViewModel: TaskListViewModel by viewModels() private val mainViewModel: MainActivityViewModel by activityViewModels() @@ -938,7 +941,12 @@ class TaskListFragment : Fragment(), OnRefreshListener, Toolbar.OnMenuItemClickL lifecycleScope.launch { val tasks = (intent.getSerializableExtra(EXTRAS_TASK_ID) as? ArrayList) - ?.let { taskDao.fetch(it) } + ?.let { + // hack to wait for task save transaction to complete + database.withTransaction { + taskDao.fetch(it) + } + } ?.filterNot { it.readOnly } ?.takeIf { it.isNotEmpty() } ?: return@launch