From 9bcadaab5acdb8fab4c6726a36792863b3f431ae Mon Sep 17 00:00:00 2001 From: Alex Baker Date: Fri, 22 Mar 2024 11:02:56 -0500 Subject: [PATCH] Fix astrid manual ordering crash in widget --- .../java/com/todoroo/astrid/subtasks/SubtasksHelper.kt | 7 +++---- .../main/java/org/tasks/widget/TasksWidgetViewFactory.kt | 7 ++----- 2 files changed, 5 insertions(+), 9 deletions(-) diff --git a/app/src/main/java/com/todoroo/astrid/subtasks/SubtasksHelper.kt b/app/src/main/java/com/todoroo/astrid/subtasks/SubtasksHelper.kt index 223bc7947..cf6d6028e 100644 --- a/app/src/main/java/com/todoroo/astrid/subtasks/SubtasksHelper.kt +++ b/app/src/main/java/com/todoroo/astrid/subtasks/SubtasksHelper.kt @@ -26,13 +26,13 @@ class SubtasksHelper @Inject constructor( private val taskDao: TaskDao, private val tagDataDao: TagDataDao, private val taskListMetadataDao: TaskListMetadataDao) { + suspend fun applySubtasksToWidgetFilter( filter: Filter, preferences: QueryPreferences, - originalQuery: String - ): String { - var query = originalQuery + ) { if (filter is AstridOrderingFilter && preferences.isAstridSort) { + var query = filter.sql!! val tagData = tagDataDao.getTagByName(filter.title!!) val tlm = when { tagData != null -> @@ -50,7 +50,6 @@ class SubtasksHelper @Inject constructor( filter.filterOverride = query } } - return query } private suspend fun getOrderString(tagData: TagData?, tlm: TaskListMetadata?): String { diff --git a/app/src/main/java/org/tasks/widget/TasksWidgetViewFactory.kt b/app/src/main/java/org/tasks/widget/TasksWidgetViewFactory.kt index 4398cec8f..3d80dba5e 100644 --- a/app/src/main/java/org/tasks/widget/TasksWidgetViewFactory.kt +++ b/app/src/main/java/org/tasks/widget/TasksWidgetViewFactory.kt @@ -261,11 +261,8 @@ internal class TasksWidgetViewFactory( private fun getTask(position: Int): TaskContainer? = tasks.getItem(position) private suspend fun getQuery(filter: Filter): List { - val queries = getQuery(widgetPreferences, filter) - val last = queries.size - 1 - queries[last] = - subtasksHelper.applySubtasksToWidgetFilter(filter, widgetPreferences, queries[last]) - return queries + subtasksHelper.applySubtasksToWidgetFilter(filter, widgetPreferences) + return getQuery(widgetPreferences, filter) } private fun formatDueDate(row: RemoteViews, task: TaskContainer) = with(row) {