adding a check for removing broken checklist items

This commit is contained in:
tibbi 2021-02-20 23:28:13 +01:00
parent b5f6f421b0
commit 31c74b14c7
2 changed files with 6 additions and 0 deletions

View File

@ -94,6 +94,9 @@ class WidgetAdapter(val context: Context, val intent: Intent) : RemoteViewsServi
if (note?.type == NoteType.TYPE_CHECKLIST.value) {
val checklistItemType = object : TypeToken<List<ChecklistItem>>() {}.type
checklistItems = Gson().fromJson<ArrayList<ChecklistItem>>(note!!.value, checklistItemType) ?: ArrayList(1)
// checklist title can be null only because of the glitch in upgrade to 6.6.0, remove this check in the future
checklistItems = checklistItems.filter { it.title != null }.toMutableList() as ArrayList<ChecklistItem>
if (context.config.moveDoneChecklistItems) {
checklistItems.sortBy { it.isDone }
}

View File

@ -59,6 +59,9 @@ class ChecklistFragment : NoteFragment(), ChecklistItemsListener {
try {
val checklistItemType = object : TypeToken<List<ChecklistItem>>() {}.type
items = Gson().fromJson<ArrayList<ChecklistItem>>(storedNote.value, checklistItemType) ?: ArrayList(1)
// checklist title can be null only because of the glitch in upgrade to 6.6.0, remove this check in the future
items = items.filter { it.title != null }.toMutableList() as ArrayList<ChecklistItem>
} catch (e: Exception) {
migrateCheckListOnFailure(storedNote)
}