Automatically set default Microsoft To Do list

pull/3566/head
Alex Baker 7 months ago
parent 3d04f93aae
commit 83bc9798d6

@ -27,8 +27,10 @@ import org.tasks.data.entity.CaldavCalendar.Companion.ACCESS_UNKNOWN
import org.tasks.data.entity.CaldavTask import org.tasks.data.entity.CaldavTask
import org.tasks.data.entity.TagData import org.tasks.data.entity.TagData
import org.tasks.data.entity.Task import org.tasks.data.entity.Task
import org.tasks.filters.CaldavFilter
import org.tasks.http.HttpClientFactory import org.tasks.http.HttpClientFactory
import org.tasks.http.NotFoundException import org.tasks.http.NotFoundException
import org.tasks.preferences.DefaultFilterProvider
import org.tasks.preferences.Preferences import org.tasks.preferences.Preferences
import org.tasks.sync.microsoft.Error.Companion.toMicrosoftError import org.tasks.sync.microsoft.Error.Companion.toMicrosoftError
import org.tasks.sync.microsoft.MicrosoftConverter.applyRemote import org.tasks.sync.microsoft.MicrosoftConverter.applyRemote
@ -59,6 +61,7 @@ class MicrosoftSynchronizer @Inject constructor(
private val tagDataDao: TagDataDao, private val tagDataDao: TagDataDao,
private val preferences: Preferences, private val preferences: Preferences,
private val vtodoCache: VtodoCache, private val vtodoCache: VtodoCache,
private val defaultFilterProvider: DefaultFilterProvider,
) { ) {
suspend fun sync(account: CaldavAccount) { suspend fun sync(account: CaldavAccount) {
Timber.d("Synchronizing $account") Timber.d("Synchronizing $account")
@ -121,6 +124,9 @@ class MicrosoftSynchronizer @Inject constructor(
remote.applyTo(this) remote.applyTo(this)
} }
caldavDao.insert(local) caldavDao.insert(local)
if (remote.wellknownListName == "defaultList") {
defaultFilterProvider.defaultList = CaldavFilter(local, account)
}
} else if (local.name != remoteName || local.access != access) { } else if (local.name != remoteName || local.access != access) {
remote.applyTo(local) remote.applyTo(local)
caldavDao.update(local) caldavDao.update(local)

Loading…
Cancel
Save