Replace some usage of legacy task dao

pull/1055/head
Alex Baker 4 years ago
parent 9559d90c25
commit 489b0298c6

@ -5,7 +5,6 @@
*/
package com.todoroo.astrid.dao
import com.natpryce.makeiteasy.MakeItEasy.with
import com.todoroo.andlib.utility.DateUtilities
import com.todoroo.astrid.data.Task
import com.todoroo.astrid.service.TaskDeleter
@ -16,9 +15,6 @@ import org.junit.Assert.*
import org.junit.Test
import org.tasks.injection.InjectingTestCase
import org.tasks.injection.ProductionModule
import org.tasks.makers.TaskMaker.ID
import org.tasks.makers.TaskMaker.PARENT
import org.tasks.makers.TaskMaker.newTask
import javax.inject.Inject
@UninstallModules(ProductionModule::class)
@ -142,27 +138,4 @@ class TaskDaoTests : InjectingTestCase() {
// make sure db still works
assertEquals(0, taskDao.getAll().size)
}
@Test
fun findChildrenInList() = runBlocking {
taskDao.createNew(newTask(with(ID, 1L)))
taskDao.createNew(newTask(with(ID, 2L), with(PARENT, 1L)))
assertEquals(listOf(2L), taskDao.getChildren(listOf(1L, 2L)))
}
@Test
fun findRecursiveChildrenInList() = runBlocking {
taskDao.createNew(newTask(with(ID, 1L)))
taskDao.createNew(newTask(with(ID, 2L), with(PARENT, 1L)))
taskDao.createNew(newTask(with(ID, 3L), with(PARENT, 2L)))
assertEquals(listOf(2L, 3L, 3L), taskDao.getChildren(listOf(1L, 2L, 3L)))
}
@Test
fun findRecursiveChildrenInListAfterSkippingParent() = runBlocking {
taskDao.createNew(newTask(with(ID, 1L)))
taskDao.createNew(newTask(with(ID, 2L), with(PARENT, 1L)))
taskDao.createNew(newTask(with(ID, 3L), with(PARENT, 2L)))
assertEquals(listOf(2L, 3L), taskDao.getChildren(listOf(1L, 3L)))
}
}

@ -2,7 +2,6 @@ package com.todoroo.astrid.reminders
import com.natpryce.makeiteasy.MakeItEasy.with
import com.todoroo.andlib.utility.DateUtilities
import com.todoroo.astrid.dao.TaskDao
import com.todoroo.astrid.data.Task
import dagger.hilt.android.testing.HiltAndroidTest
import dagger.hilt.android.testing.UninstallModules
@ -12,6 +11,7 @@ import org.junit.Before
import org.junit.Test
import org.tasks.Freeze
import org.tasks.R
import org.tasks.data.TaskDao
import org.tasks.date.DateTimeUtils
import org.tasks.injection.InjectingTestCase
import org.tasks.injection.ProductionModule

@ -3,7 +3,6 @@ package org.tasks.data
import com.natpryce.makeiteasy.MakeItEasy.with
import com.natpryce.makeiteasy.PropertyValue
import com.todoroo.andlib.utility.DateUtilities.now
import com.todoroo.astrid.dao.TaskDao
import dagger.hilt.android.testing.HiltAndroidTest
import dagger.hilt.android.testing.UninstallModules
import kotlinx.coroutines.runBlocking

@ -0,0 +1,122 @@
/*
* Copyright (c) 2012 Todoroo Inc
*
* See the file "LICENSE" for the full license governing this code.
*/
package org.tasks.data
import com.natpryce.makeiteasy.MakeItEasy.with
import com.todoroo.andlib.utility.DateUtilities
import com.todoroo.astrid.data.Task
import com.todoroo.astrid.service.TaskDeleter
import dagger.hilt.android.testing.HiltAndroidTest
import dagger.hilt.android.testing.UninstallModules
import kotlinx.coroutines.runBlocking
import org.junit.Assert.*
import org.junit.Test
import org.tasks.injection.InjectingTestCase
import org.tasks.injection.ProductionModule
import org.tasks.makers.TaskMaker.ID
import org.tasks.makers.TaskMaker.PARENT
import org.tasks.makers.TaskMaker.newTask
import javax.inject.Inject
@UninstallModules(ProductionModule::class)
@HiltAndroidTest
class TaskDaoTests : InjectingTestCase() {
@Inject lateinit var taskDao: TaskDao
@Inject lateinit var taskDeleter: TaskDeleter
/** Test various task fetch conditions */
@Test
fun testTaskConditions() = runBlocking {
// create normal task
var task = Task()
task.title = "normal"
taskDao.createNew(task)
// create blank task
task = Task()
task.title = ""
taskDao.createNew(task)
// create hidden task
task = Task()
task.title = "hidden"
task.hideUntil = DateUtilities.now() + 10000
taskDao.createNew(task)
// create task with deadlines
task = Task()
task.title = "deadlineInFuture"
task.dueDate = DateUtilities.now() + 10000
taskDao.createNew(task)
task = Task()
task.title = "deadlineInPast"
task.dueDate = DateUtilities.now() - 10000
taskDao.createNew(task)
// create completed task
task = Task()
task.title = "completed"
task.completionDate = DateUtilities.now() - 10000
taskDao.createNew(task)
// check is active
assertEquals(5, taskDao.getActiveTasks().size)
// check is visible
assertEquals(5, taskDao.getActiveTasks().size)
}
/** Test task deletion */
@Test
fun testTDeletion() = runBlocking {
assertEquals(0, taskDao.getAll().size)
// create task "happy"
val task = Task()
task.title = "happy"
taskDao.createNew(task)
assertEquals(1, taskDao.getAll().size)
// delete
taskDeleter.delete(task)
assertEquals(0, taskDao.getAll().size)
}
/** Test passing invalid task indices to various things */
@Test
fun testInvalidIndex() = runBlocking {
assertEquals(0, taskDao.getAll().size)
assertNull(taskDao.fetch(1))
taskDeleter.delete(listOf(1L))
// make sure db still works
assertEquals(0, taskDao.getAll().size)
}
@Test
fun findChildrenInList() = runBlocking {
taskDao.createNew(newTask(with(ID, 1L)))
taskDao.createNew(newTask(with(ID, 2L), with(PARENT, 1L)))
assertEquals(listOf(2L), taskDao.getChildren(listOf(1L, 2L)))
}
@Test
fun findRecursiveChildrenInList() = runBlocking {
taskDao.createNew(newTask(with(ID, 1L)))
taskDao.createNew(newTask(with(ID, 2L), with(PARENT, 1L)))
taskDao.createNew(newTask(with(ID, 3L), with(PARENT, 2L)))
assertEquals(listOf(2L, 3L, 3L), taskDao.getChildren(listOf(1L, 2L, 3L)))
}
@Test
fun findRecursiveChildrenInListAfterSkippingParent() = runBlocking {
taskDao.createNew(newTask(with(ID, 1L)))
taskDao.createNew(newTask(with(ID, 2L), with(PARENT, 1L)))
taskDao.createNew(newTask(with(ID, 3L), with(PARENT, 2L)))
assertEquals(listOf(2L, 3L), taskDao.getChildren(listOf(1L, 3L)))
}
}

@ -46,7 +46,6 @@ import com.todoroo.astrid.timers.TimerPlugin
import com.todoroo.astrid.utility.Flags
import dagger.hilt.android.AndroidEntryPoint
import io.reactivex.android.schedulers.AndroidSchedulers
import io.reactivex.disposables.CompositeDisposable
import io.reactivex.disposables.Disposable
import io.reactivex.subjects.PublishSubject
import kotlinx.coroutines.NonCancellable

@ -6,7 +6,6 @@ import androidx.annotation.NonNull;
import com.todoroo.andlib.sql.Criterion;
import com.todoroo.andlib.sql.Join;
import com.todoroo.andlib.sql.QueryTemplate;
import com.todoroo.astrid.dao.TaskDao;
import com.todoroo.astrid.data.Task;
import java.util.HashMap;
import java.util.Map;
@ -14,6 +13,7 @@ import java.util.Objects;
import org.tasks.R;
import org.tasks.data.CaldavCalendar;
import org.tasks.data.CaldavTask;
import org.tasks.data.TaskDao;
public class CaldavFilter extends Filter {

@ -6,7 +6,6 @@ import androidx.annotation.NonNull;
import com.todoroo.andlib.sql.Criterion;
import com.todoroo.andlib.sql.Join;
import com.todoroo.andlib.sql.QueryTemplate;
import com.todoroo.astrid.dao.TaskDao;
import com.todoroo.astrid.data.Task;
import java.util.HashMap;
import java.util.Map;
@ -14,6 +13,7 @@ import java.util.Objects;
import org.tasks.R;
import org.tasks.data.GoogleTask;
import org.tasks.data.GoogleTaskList;
import org.tasks.data.TaskDao;
public class GtasksFilter extends Filter {

@ -6,13 +6,13 @@ import androidx.annotation.NonNull;
import com.todoroo.andlib.sql.Criterion;
import com.todoroo.andlib.sql.Join;
import com.todoroo.andlib.sql.QueryTemplate;
import com.todoroo.astrid.dao.TaskDao;
import com.todoroo.astrid.data.Task;
import java.util.HashMap;
import java.util.Map;
import org.tasks.R;
import org.tasks.data.Tag;
import org.tasks.data.TagData;
import org.tasks.data.TaskDao;
public class TagFilter extends Filter {

@ -12,12 +12,12 @@ import com.todoroo.andlib.sql.QueryTemplate
import com.todoroo.andlib.utility.AndroidUtilities
import com.todoroo.astrid.api.Filter
import com.todoroo.astrid.api.PermaSql
import com.todoroo.astrid.dao.TaskDao
import com.todoroo.astrid.dao.TaskDao.TaskCriteria.activeAndVisible
import com.todoroo.astrid.data.Task
import com.todoroo.astrid.timers.TimerPlugin
import dagger.hilt.android.qualifiers.ApplicationContext
import org.tasks.R
import org.tasks.data.TaskDao
import org.tasks.data.TaskDao.TaskCriteria.activeAndVisible
import org.tasks.filters.RecentlyModifiedFilter
import org.tasks.filters.SortableFilter
import org.tasks.preferences.Preferences

@ -5,10 +5,6 @@
*/
package com.todoroo.astrid.dao
import androidx.paging.DataSource
import androidx.sqlite.db.SimpleSQLiteQuery
import com.todoroo.andlib.sql.Criterion
import com.todoroo.andlib.sql.Functions
import com.todoroo.andlib.utility.DateUtilities
import com.todoroo.astrid.api.Filter
import com.todoroo.astrid.data.Task
@ -24,9 +20,6 @@ class TaskDao @Inject constructor(
private val workManager: WorkManager,
private val taskDao: TaskDao) {
internal suspend fun needsRefresh(now: Long = DateUtilities.now()): List<Task> =
taskDao.needsRefresh(now)
suspend fun fetch(id: Long): Task? = taskDao.fetch(id)
suspend fun fetch(ids: List<Long>): List<Task> = taskDao.fetch(ids)
@ -37,53 +30,21 @@ class TaskDao @Inject constructor(
suspend fun fetch(remoteId: String): Task? = taskDao.fetch(remoteId)
suspend fun getActiveTasks(): List<Task> = taskDao.getActiveTasks()
suspend fun getRecurringTasks(remoteIds: List<String>): List<Task> =
taskDao.getRecurringTasks(remoteIds)
suspend fun setCompletionDate(remoteId: String, completionDate: Long) =
taskDao.setCompletionDate(remoteId, completionDate)
suspend fun snooze(taskIds: List<Long>, millis: Long) = taskDao.snooze(taskIds, millis)
suspend fun getGoogleTasksToPush(account: String): List<Task> =
taskDao.getGoogleTasksToPush(account)
suspend fun getCaldavTasksToPush(calendar: String): List<Task> =
taskDao.getCaldavTasksToPush(calendar)
suspend fun getTasksWithReminders(): List<Task> = taskDao.getTasksWithReminders()
suspend fun getAll(): List<Task> = taskDao.getAll()
suspend fun getAllCalendarEvents(): List<String> = taskDao.getAllCalendarEvents()
suspend fun clearAllCalendarEvents(): Int = taskDao.clearAllCalendarEvents()
suspend fun getCompletedCalendarEvents(): List<String> = taskDao.getCompletedCalendarEvents()
suspend fun clearCompletedCalendarEvents(): Int = taskDao.clearCompletedCalendarEvents()
suspend fun fetchTasks(callback: suspend (SubtaskInfo) -> List<String>): List<TaskContainer> =
taskDao.fetchTasks(callback)
suspend fun fetchTasks(callback: suspend (SubtaskInfo) -> List<String>, subtasks: SubtaskInfo): List<TaskContainer> =
taskDao.fetchTasks(callback, subtasks)
suspend fun fetchTasks(preferences: Preferences, filter: Filter): List<TaskContainer> =
taskDao.fetchTasks(preferences, filter)
suspend fun fetchTasks(query: SimpleSQLiteQuery): List<TaskContainer> =
taskDao.fetchTasks(query)
suspend fun count(query: SimpleSQLiteQuery): Int = taskDao.count(query)
suspend fun getSubtaskInfo(): SubtaskInfo = taskDao.getSubtaskInfo()
fun getTaskFactory(query: SimpleSQLiteQuery): DataSource.Factory<Int, TaskContainer> =
taskDao.getTaskFactory(query)
suspend fun touch(id: Long) = touch(listOf(id))
suspend fun touch(ids: List<Long>) {
@ -91,13 +52,7 @@ class TaskDao @Inject constructor(
workManager.sync(false)
}
suspend fun setParent(parent: Long, tasks: List<Long>) =
tasks.eachChunk { setParentInternal(parent, it) }
private suspend fun setParentInternal(parent: Long, children: List<Long>) =
taskDao.setParentInternal(parent, children)
suspend fun fetchChildren(id: Long): List<Task> = taskDao.fetchChildren(id)
suspend fun setParent(parent: Long, tasks: List<Long>) = taskDao.setParent(parent, tasks)
suspend fun getChildren(id: Long): List<Long> = taskDao.getChildren(id)
@ -124,35 +79,22 @@ class TaskDao @Inject constructor(
if (task.dueDate != original?.dueDate) {
task.reminderSnooze = 0
}
if (update(task) == 1) {
if (taskDao.update(task) == 1) {
workManager.afterSave(task, original)
}
}
suspend fun insert(task: Task): Long = taskDao.insert(task)
suspend fun update(task: Task): Int = taskDao.update(task)
suspend fun createNew(task: Task) = taskDao.createNew(task)
suspend fun count(filter: Filter): Int = taskDao.count(filter)
suspend fun fetchFiltered(filter: Filter): List<Task> = taskDao.fetchFiltered(filter)
suspend fun fetchFiltered(queryTemplate: String): List<Task> =
taskDao.fetchFiltered(queryTemplate)
suspend fun getLocalTasks(): List<Long> = taskDao.getLocalTasks()
/** Generates SQL clauses */
object TaskCriteria {
/** @return tasks that have not yet been completed or deleted
*/
@JvmStatic fun activeAndVisible(): Criterion {
return Criterion.and(
Task.COMPLETION_DATE.lte(0),
Task.DELETION_DATE.lte(0),
Task.HIDE_UNTIL.lte(Functions.now()))
}
}
internal suspend fun insert(task: Task): Long = taskDao.insert(task)
internal suspend fun fetchTasks(callback: suspend (SubtaskInfo) -> List<String>): List<TaskContainer> =
taskDao.fetchTasks(callback)
internal suspend fun getAll(): List<Task> = taskDao.getAll()
internal suspend fun getActiveTasks(): List<Task> = taskDao.getActiveTasks()
}

@ -12,12 +12,12 @@ import android.net.Uri
import android.provider.CalendarContract
import android.text.format.Time
import com.todoroo.andlib.utility.DateUtilities
import com.todoroo.astrid.dao.TaskDao
import com.todoroo.astrid.data.Task
import dagger.hilt.android.qualifiers.ApplicationContext
import org.tasks.R
import org.tasks.Strings.isNullOrEmpty
import org.tasks.calendars.CalendarEventProvider
import org.tasks.data.TaskDao
import org.tasks.preferences.PermissionChecker
import org.tasks.preferences.Preferences
import timber.log.Timber

@ -6,8 +6,8 @@
package com.todoroo.astrid.reminders
import com.todoroo.andlib.utility.DateUtilities
import com.todoroo.astrid.dao.TaskDao
import com.todoroo.astrid.data.Task
import org.tasks.data.TaskDao
import org.tasks.jobs.NotificationQueue
import org.tasks.jobs.ReminderEntry
import org.tasks.preferences.Preferences

@ -1,7 +1,6 @@
package com.todoroo.astrid.service
import com.todoroo.astrid.api.Filter
import com.todoroo.astrid.dao.TaskDao
import com.todoroo.astrid.data.Task
import kotlinx.collections.immutable.persistentListOf
import org.tasks.LocalBroadcastManager

@ -5,7 +5,6 @@ import com.todoroo.andlib.utility.DateUtilities
import com.todoroo.astrid.api.CaldavFilter
import com.todoroo.astrid.api.Filter
import com.todoroo.astrid.api.GtasksFilter
import com.todoroo.astrid.dao.TaskDao
import com.todoroo.astrid.data.Task
import dagger.hilt.android.qualifiers.ApplicationContext
import org.tasks.BuildConfig

@ -4,11 +4,11 @@ import android.app.PendingIntent
import android.content.Context
import androidx.core.app.NotificationCompat
import com.todoroo.astrid.api.Filter
import com.todoroo.astrid.dao.TaskDao
import com.todoroo.astrid.reminders.ReminderService
import com.todoroo.astrid.voice.VoiceOutputAssistant
import dagger.hilt.android.qualifiers.ApplicationContext
import kotlinx.coroutines.delay
import org.tasks.data.TaskDao
import org.tasks.intents.TaskIntents
import org.tasks.notifications.AudioManager
import org.tasks.notifications.Notification

@ -31,13 +31,13 @@ import com.todoroo.astrid.core.CriterionInstance
import com.todoroo.astrid.core.CustomFilterAdapter
import com.todoroo.astrid.core.CustomFilterItemTouchHelper
import com.todoroo.astrid.dao.Database
import com.todoroo.astrid.dao.TaskDao.TaskCriteria.activeAndVisible
import com.todoroo.astrid.data.Task
import dagger.hilt.android.AndroidEntryPoint
import org.tasks.R
import org.tasks.Strings
import org.tasks.data.Filter
import org.tasks.data.FilterDao
import org.tasks.data.TaskDao.TaskCriteria.activeAndVisible
import org.tasks.filters.FilterCriteriaProvider
import org.tasks.locale.Locale
import java.util.*

@ -4,9 +4,9 @@ import android.net.Uri
import android.os.Bundle
import androidx.appcompat.app.AppCompatActivity
import androidx.lifecycle.lifecycleScope
import com.todoroo.astrid.dao.TaskDao
import dagger.hilt.android.AndroidEntryPoint
import kotlinx.coroutines.launch
import org.tasks.data.TaskDao
import org.tasks.intents.TaskIntents
import org.tasks.provider.TasksContentProvider
import org.tasks.provider.TasksContentProvider.Companion.URI_OPEN_TASK

@ -12,7 +12,6 @@ import com.google.gson.Gson
import com.google.gson.GsonBuilder
import com.todoroo.andlib.utility.DialogUtilities
import com.todoroo.astrid.backup.BackupConstants
import com.todoroo.astrid.dao.TaskDao
import com.todoroo.astrid.data.Task
import org.tasks.BuildConfig
import org.tasks.R

@ -5,7 +5,6 @@ import android.content.Context
import android.content.Intent
import com.google.android.apps.dashclock.api.DashClockExtension
import com.google.android.apps.dashclock.api.ExtensionData
import com.todoroo.astrid.dao.TaskDao
import dagger.hilt.android.AndroidEntryPoint
import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.Dispatchers
@ -13,6 +12,7 @@ import kotlinx.coroutines.SupervisorJob
import kotlinx.coroutines.launch
import org.tasks.LocalBroadcastManager
import org.tasks.R
import org.tasks.data.TaskDao
import org.tasks.intents.TaskIntents
import org.tasks.preferences.DefaultFilterProvider
import org.tasks.preferences.Preferences

@ -11,8 +11,8 @@ import com.todoroo.astrid.api.Filter
import com.todoroo.astrid.api.GtasksFilter
import com.todoroo.astrid.api.PermaSql
import com.todoroo.astrid.core.SortHelper
import com.todoroo.astrid.dao.TaskDao.TaskCriteria.activeAndVisible
import com.todoroo.astrid.data.Task
import org.tasks.data.TaskDao.TaskCriteria.activeAndVisible
import org.tasks.preferences.Preferences
internal object TaskListQueryRecursive {

@ -13,7 +13,6 @@ import com.todoroo.astrid.api.CustomFilterCriterion;
import com.todoroo.astrid.api.MultipleSelectCriterion;
import com.todoroo.astrid.api.PermaSql;
import com.todoroo.astrid.api.TextInputCriterion;
import com.todoroo.astrid.dao.TaskDao;
import com.todoroo.astrid.data.Task;
import com.todoroo.astrid.data.Task.Priority;
import dagger.hilt.android.qualifiers.ApplicationContext;
@ -32,6 +31,7 @@ import org.tasks.data.GoogleTaskListDaoBlocking;
import org.tasks.data.Tag;
import org.tasks.data.TagData;
import org.tasks.data.TagDataDaoBlocking;
import org.tasks.data.TaskDao;
public class FilterCriteriaProvider {

@ -11,13 +11,13 @@ import com.todoroo.andlib.sql.Join;
import com.todoroo.andlib.sql.QueryTemplate;
import com.todoroo.astrid.api.Filter;
import com.todoroo.astrid.api.FilterListItem;
import com.todoroo.astrid.dao.TaskDao;
import com.todoroo.astrid.data.Task;
import java.util.HashMap;
import java.util.Map;
import org.tasks.R;
import org.tasks.data.Geofence;
import org.tasks.data.Place;
import org.tasks.data.TaskDao;
public class PlaceFilter extends Filter {

@ -7,7 +7,6 @@ import androidx.lifecycle.lifecycleScope
import androidx.preference.Preference
import androidx.preference.SwitchPreferenceCompat
import com.todoroo.astrid.dao.Database
import com.todoroo.astrid.dao.TaskDao
import dagger.hilt.android.AndroidEntryPoint
import io.reactivex.disposables.CompositeDisposable
import kotlinx.coroutines.launch
@ -15,6 +14,7 @@ import org.tasks.LocalBroadcastManager
import org.tasks.PermissionUtil
import org.tasks.R
import org.tasks.calendars.CalendarEventProvider
import org.tasks.data.TaskDao
import org.tasks.files.FileHelper
import org.tasks.injection.InjectingPreferenceFragment
import org.tasks.preferences.FragmentPermissionRequestor

@ -2,11 +2,11 @@ package org.tasks.receivers
import android.content.Context
import android.content.Intent
import com.todoroo.astrid.dao.TaskDao
import com.todoroo.astrid.provider.Astrid2TaskProvider
import dagger.hilt.android.AndroidEntryPoint
import dagger.hilt.android.qualifiers.ApplicationContext
import org.tasks.R
import org.tasks.data.TaskDao
import org.tasks.injection.InjectingJobIntentService
import org.tasks.preferences.DefaultFilterProvider
import org.tasks.preferences.Preferences

@ -4,10 +4,9 @@ import android.content.Context
import android.content.Intent
import android.os.Bundle
import androidx.lifecycle.lifecycleScope
import com.todoroo.astrid.dao.TaskDao
import dagger.hilt.android.AndroidEntryPoint
import io.reactivex.disposables.CompositeDisposable
import kotlinx.coroutines.launch
import org.tasks.data.TaskDao
import org.tasks.injection.InjectingAppCompatActivity
import org.tasks.intents.TaskIntents
import org.tasks.notifications.NotificationManager
@ -23,7 +22,6 @@ class NotificationActivity : InjectingAppCompatActivity(), NotificationDialog.No
@Inject lateinit var themeAccent: ThemeAccent
private var taskId: Long = 0
private var disposables: CompositeDisposable? = null
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
@ -43,16 +41,6 @@ class NotificationActivity : InjectingAppCompatActivity(), NotificationDialog.No
finish()
}
override fun onResume() {
super.onResume()
disposables = CompositeDisposable()
}
override fun onPause() {
super.onPause()
disposables!!.dispose()
}
override fun edit() {
lifecycleScope.launch {
notificationManager.cancel(taskId)

@ -6,12 +6,12 @@ import android.content.DialogInterface
import android.content.Intent
import android.os.Bundle
import androidx.lifecycle.lifecycleScope
import com.todoroo.astrid.dao.TaskDao
import com.todoroo.astrid.reminders.ReminderService
import dagger.hilt.android.AndroidEntryPoint
import kotlinx.coroutines.NonCancellable
import kotlinx.coroutines.launch
import org.tasks.activities.DateAndTimePickerActivity
import org.tasks.data.TaskDao
import org.tasks.dialogs.MyTimePickerDialog
import org.tasks.injection.InjectingAppCompatActivity
import org.tasks.notifications.NotificationManager

@ -1,10 +1,10 @@
package org.tasks.scheduling
import com.todoroo.andlib.utility.DateUtilities
import com.todoroo.astrid.dao.TaskDao
import com.todoroo.astrid.data.Task
import kotlinx.collections.immutable.toImmutableList
import org.tasks.R
import org.tasks.data.TaskDao
import org.tasks.jobs.WorkManager
import org.tasks.preferences.Preferences
import org.tasks.time.DateTimeUtils

@ -20,12 +20,12 @@ import androidx.recyclerview.widget.RecyclerView
import com.todoroo.astrid.adapter.NavigationDrawerAdapter
import com.todoroo.astrid.api.Filter
import com.todoroo.astrid.api.FilterListItem
import com.todoroo.astrid.dao.TaskDao
import dagger.hilt.android.AndroidEntryPoint
import kotlinx.coroutines.launch
import org.tasks.LocalBroadcastManager
import org.tasks.R
import org.tasks.billing.PurchaseActivity
import org.tasks.data.TaskDao
import org.tasks.dialogs.NewFilterDialog.Companion.newFilterDialog
import org.tasks.filters.FilterProvider
import org.tasks.filters.NavigationDrawerAction

@ -29,8 +29,6 @@ import com.todoroo.andlib.utility.DateUtilities.now
import com.todoroo.astrid.activity.MainActivity
import com.todoroo.astrid.api.Filter
import com.todoroo.astrid.api.GtasksFilter
import com.todoroo.astrid.dao.TaskDao
import com.todoroo.astrid.dao.TaskDao.TaskCriteria.activeAndVisible
import com.todoroo.astrid.data.Task
import com.todoroo.astrid.service.TaskCompleter
import com.todoroo.astrid.service.TaskCreator
@ -39,10 +37,8 @@ import dagger.hilt.android.AndroidEntryPoint
import kotlinx.coroutines.launch
import org.tasks.LocalBroadcastManager
import org.tasks.R
import org.tasks.data.CaldavDao
import org.tasks.data.GoogleTask
import org.tasks.data.GoogleTaskDao
import org.tasks.data.TaskContainer
import org.tasks.data.*
import org.tasks.data.TaskDao.TaskCriteria.activeAndVisible
import org.tasks.locale.Locale
import org.tasks.tasklist.SubtaskViewHolder
import org.tasks.tasklist.SubtasksRecyclerAdapter

@ -8,12 +8,12 @@ import androidx.sqlite.db.SimpleSQLiteQuery
import com.todoroo.andlib.utility.AndroidUtilities
import com.todoroo.andlib.utility.DateUtilities
import com.todoroo.astrid.api.Filter
import com.todoroo.astrid.dao.TaskDao
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.launch
import org.tasks.BuildConfig
import org.tasks.data.SubtaskInfo
import org.tasks.data.TaskContainer
import org.tasks.data.TaskDao
import org.tasks.data.TaskListQuery.getQuery
import org.tasks.preferences.Preferences
import timber.log.Timber

@ -9,7 +9,6 @@ import android.widget.RemoteViews
import android.widget.RemoteViewsService.RemoteViewsFactory
import com.todoroo.andlib.utility.DateUtilities
import com.todoroo.astrid.api.Filter
import com.todoroo.astrid.dao.TaskDao
import com.todoroo.astrid.data.Task
import com.todoroo.astrid.subtasks.SubtasksHelper
import kotlinx.coroutines.runBlocking
@ -17,6 +16,7 @@ import org.tasks.BuildConfig
import org.tasks.R
import org.tasks.data.SubtaskInfo
import org.tasks.data.TaskContainer
import org.tasks.data.TaskDao
import org.tasks.data.TaskListQuery.getQuery
import org.tasks.locale.Locale
import org.tasks.preferences.DefaultFilterProvider

@ -5,10 +5,10 @@ import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.widget.RemoteViewsService;
import com.todoroo.astrid.dao.TaskDao;
import com.todoroo.astrid.subtasks.SubtasksHelper;
import dagger.hilt.android.AndroidEntryPoint;
import javax.inject.Inject;
import org.tasks.data.TaskDao;
import org.tasks.locale.Locale;
import org.tasks.preferences.DefaultFilterProvider;
import org.tasks.preferences.Preferences;

@ -2,7 +2,6 @@ package org.tasks.widget
import android.os.Bundle
import androidx.lifecycle.lifecycleScope
import com.todoroo.astrid.dao.TaskDao
import com.todoroo.astrid.data.Task
import com.todoroo.astrid.service.TaskCompleter
import dagger.hilt.android.AndroidEntryPoint
@ -10,6 +9,7 @@ import kotlinx.coroutines.NonCancellable
import kotlinx.coroutines.launch
import org.tasks.LocalBroadcastManager
import org.tasks.R
import org.tasks.data.TaskDao
import org.tasks.dialogs.DateTimePicker.Companion.newDateTimePicker
import org.tasks.dialogs.DateTimePicker.OnDismissHandler
import org.tasks.injection.InjectingAppCompatActivity

Loading…
Cancel
Save