Fix astrid manual ordering crash in widget

pull/2803/head
Alex Baker 2 months ago
parent be766074b0
commit 9bcadaab5a

@ -26,13 +26,13 @@ class SubtasksHelper @Inject constructor(
private val taskDao: TaskDao, private val taskDao: TaskDao,
private val tagDataDao: TagDataDao, private val tagDataDao: TagDataDao,
private val taskListMetadataDao: TaskListMetadataDao) { private val taskListMetadataDao: TaskListMetadataDao) {
suspend fun applySubtasksToWidgetFilter( suspend fun applySubtasksToWidgetFilter(
filter: Filter, filter: Filter,
preferences: QueryPreferences, preferences: QueryPreferences,
originalQuery: String ) {
): String {
var query = originalQuery
if (filter is AstridOrderingFilter && preferences.isAstridSort) { if (filter is AstridOrderingFilter && preferences.isAstridSort) {
var query = filter.sql!!
val tagData = tagDataDao.getTagByName(filter.title!!) val tagData = tagDataDao.getTagByName(filter.title!!)
val tlm = when { val tlm = when {
tagData != null -> tagData != null ->
@ -50,7 +50,6 @@ class SubtasksHelper @Inject constructor(
filter.filterOverride = query filter.filterOverride = query
} }
} }
return query
} }
private suspend fun getOrderString(tagData: TagData?, tlm: TaskListMetadata?): String { private suspend fun getOrderString(tagData: TagData?, tlm: TaskListMetadata?): String {

@ -261,11 +261,8 @@ internal class TasksWidgetViewFactory(
private fun getTask(position: Int): TaskContainer? = tasks.getItem(position) private fun getTask(position: Int): TaskContainer? = tasks.getItem(position)
private suspend fun getQuery(filter: Filter): List<String> { private suspend fun getQuery(filter: Filter): List<String> {
val queries = getQuery(widgetPreferences, filter) subtasksHelper.applySubtasksToWidgetFilter(filter, widgetPreferences)
val last = queries.size - 1 return getQuery(widgetPreferences, filter)
queries[last] =
subtasksHelper.applySubtasksToWidgetFilter(filter, widgetPreferences, queries[last])
return queries
} }
private fun formatDueDate(row: RemoteViews, task: TaskContainer) = with(row) { private fun formatDueDate(row: RemoteViews, task: TaskContainer) = with(row) {

Loading…
Cancel
Save