Dagger 2.31.2 & Hilt 1.0.0-alpha03

pull/1330/head
Alex Baker 5 years ago
parent c8b2818e6c
commit 94214ee059

@ -5,18 +5,20 @@ import dagger.Module
import dagger.Provides import dagger.Provides
import dagger.hilt.InstallIn import dagger.hilt.InstallIn
import dagger.hilt.android.components.ActivityComponent import dagger.hilt.android.components.ActivityComponent
import dagger.hilt.android.components.ViewModelComponent
import dagger.hilt.android.qualifiers.ApplicationContext import dagger.hilt.android.qualifiers.ApplicationContext
import dagger.hilt.android.scopes.ActivityScoped import dagger.hilt.android.scopes.ActivityScoped
import dagger.hilt.android.scopes.ViewModelScoped
import org.tasks.billing.Inventory import org.tasks.billing.Inventory
import org.tasks.gtasks.PlayServices import org.tasks.gtasks.PlayServices
import org.tasks.location.* import org.tasks.location.*
import org.tasks.preferences.Preferences import org.tasks.preferences.Preferences
@Module @Module
@InstallIn(ActivityComponent::class) @InstallIn(ActivityComponent::class, ViewModelComponent::class)
internal class LocationModule { internal class LocationModule {
@Provides @Provides
@ActivityScoped @ViewModelScoped
fun getPlaceSearchProvider( fun getPlaceSearchProvider(
@ApplicationContext context: Context, @ApplicationContext context: Context,
preferences: Preferences, preferences: Preferences,

@ -1,11 +1,13 @@
package org.tasks.activities package org.tasks.activities
import androidx.hilt.lifecycle.ViewModelInject
import com.google.api.services.tasks.model.TaskList import com.google.api.services.tasks.model.TaskList
import dagger.hilt.android.lifecycle.HiltViewModel
import org.tasks.googleapis.InvokerFactory import org.tasks.googleapis.InvokerFactory
import org.tasks.ui.CompletableViewModel import org.tasks.ui.CompletableViewModel
import javax.inject.Inject
class CreateListViewModel @ViewModelInject constructor( @HiltViewModel
class CreateListViewModel @Inject constructor(
private val invoker: InvokerFactory private val invoker: InvokerFactory
) : CompletableViewModel<TaskList>() { ) : CompletableViewModel<TaskList>() {
suspend fun createList(account: String, name: String) { suspend fun createList(account: String, name: String) {

@ -1,11 +1,13 @@
package org.tasks.activities package org.tasks.activities
import androidx.hilt.lifecycle.ViewModelInject import dagger.hilt.android.lifecycle.HiltViewModel
import org.tasks.data.GoogleTaskList import org.tasks.data.GoogleTaskList
import org.tasks.googleapis.InvokerFactory import org.tasks.googleapis.InvokerFactory
import org.tasks.ui.ActionViewModel import org.tasks.ui.ActionViewModel
import javax.inject.Inject
class DeleteListViewModel @ViewModelInject constructor( @HiltViewModel
class DeleteListViewModel @Inject constructor(
private val invoker: InvokerFactory) : ActionViewModel() { private val invoker: InvokerFactory) : ActionViewModel() {
suspend fun deleteList(list: GoogleTaskList) { suspend fun deleteList(list: GoogleTaskList) {
run { invoker.getGtasksInvoker(list.account!!).deleteGtaskList(list.remoteId) } run { invoker.getGtasksInvoker(list.account!!).deleteGtaskList(list.remoteId) }

@ -1,12 +1,14 @@
package org.tasks.activities package org.tasks.activities
import androidx.hilt.lifecycle.ViewModelInject
import com.google.api.services.tasks.model.TaskList import com.google.api.services.tasks.model.TaskList
import dagger.hilt.android.lifecycle.HiltViewModel
import org.tasks.data.GoogleTaskList import org.tasks.data.GoogleTaskList
import org.tasks.googleapis.InvokerFactory import org.tasks.googleapis.InvokerFactory
import org.tasks.ui.CompletableViewModel import org.tasks.ui.CompletableViewModel
import javax.inject.Inject
class RenameListViewModel @ViewModelInject constructor( @HiltViewModel
class RenameListViewModel @Inject constructor(
private val invoker: InvokerFactory) : CompletableViewModel<TaskList>() { private val invoker: InvokerFactory) : CompletableViewModel<TaskList>() {
suspend fun renameList(list: GoogleTaskList, name: String) { suspend fun renameList(list: GoogleTaskList, name: String) {
run { invoker.getGtasksInvoker(list.account!!).renameGtaskList(list.remoteId, name)!! } run { invoker.getGtasksInvoker(list.account!!).renameGtaskList(list.remoteId, name)!! }

@ -2,10 +2,10 @@ package org.tasks.auth
import android.content.Context import android.content.Context
import android.content.Intent import android.content.Intent
import androidx.hilt.lifecycle.ViewModelInject
import androidx.lifecycle.MutableLiveData import androidx.lifecycle.MutableLiveData
import androidx.lifecycle.ViewModel import androidx.lifecycle.ViewModel
import com.todoroo.astrid.helper.UUIDHelper import com.todoroo.astrid.helper.UUIDHelper
import dagger.hilt.android.lifecycle.HiltViewModel
import dagger.hilt.android.qualifiers.ApplicationContext import dagger.hilt.android.qualifiers.ApplicationContext
import net.openid.appauth.AuthorizationException import net.openid.appauth.AuthorizationException
import net.openid.appauth.AuthorizationResponse import net.openid.appauth.AuthorizationResponse
@ -18,8 +18,10 @@ import org.tasks.data.CaldavAccount
import org.tasks.data.CaldavDao import org.tasks.data.CaldavDao
import org.tasks.security.KeyStoreEncryption import org.tasks.security.KeyStoreEncryption
import timber.log.Timber import timber.log.Timber
import javax.inject.Inject
class SignInViewModel @ViewModelInject constructor( @HiltViewModel
class SignInViewModel @Inject constructor(
@ApplicationContext private val context: Context, @ApplicationContext private val context: Context,
private val provider: CaldavClientProvider, private val provider: CaldavClientProvider,
private val caldavDao: CaldavDao, private val caldavDao: CaldavDao,

@ -1,9 +1,11 @@
package org.tasks.caldav package org.tasks.caldav
import androidx.hilt.lifecycle.ViewModelInject import dagger.hilt.android.lifecycle.HiltViewModel
import org.tasks.ui.CompletableViewModel import org.tasks.ui.CompletableViewModel
import javax.inject.Inject
class AddCaldavAccountViewModel @ViewModelInject constructor( @HiltViewModel
class AddCaldavAccountViewModel @Inject constructor(
private val provider: CaldavClientProvider private val provider: CaldavClientProvider
) : CompletableViewModel<String>() { ) : CompletableViewModel<String>() {
suspend fun addAccount(url: String, username: String, password: String) { suspend fun addAccount(url: String, username: String, password: String) {

@ -1,10 +1,12 @@
package org.tasks.caldav package org.tasks.caldav
import androidx.hilt.lifecycle.ViewModelInject import dagger.hilt.android.lifecycle.HiltViewModel
import org.tasks.data.CaldavAccount import org.tasks.data.CaldavAccount
import org.tasks.ui.CompletableViewModel import org.tasks.ui.CompletableViewModel
import javax.inject.Inject
class CreateCalendarViewModel @ViewModelInject constructor( @HiltViewModel
class CreateCalendarViewModel @Inject constructor(
private val provider: CaldavClientProvider private val provider: CaldavClientProvider
): CompletableViewModel<String?>() { ): CompletableViewModel<String?>() {
suspend fun createCalendar(account: CaldavAccount, name: String, color: Int) { suspend fun createCalendar(account: CaldavAccount, name: String, color: Int) {

@ -1,11 +1,13 @@
package org.tasks.caldav package org.tasks.caldav
import androidx.hilt.lifecycle.ViewModelInject import dagger.hilt.android.lifecycle.HiltViewModel
import org.tasks.data.CaldavAccount import org.tasks.data.CaldavAccount
import org.tasks.data.CaldavCalendar import org.tasks.data.CaldavCalendar
import org.tasks.ui.ActionViewModel import org.tasks.ui.ActionViewModel
import javax.inject.Inject
class DeleteCalendarViewModel @ViewModelInject constructor( @HiltViewModel
class DeleteCalendarViewModel @Inject constructor(
private val provider: CaldavClientProvider private val provider: CaldavClientProvider
) : ActionViewModel() { ) : ActionViewModel() {
suspend fun deleteCalendar(account: CaldavAccount, calendar: CaldavCalendar) { suspend fun deleteCalendar(account: CaldavAccount, calendar: CaldavCalendar) {

@ -1,9 +1,11 @@
package org.tasks.caldav package org.tasks.caldav
import androidx.hilt.lifecycle.ViewModelInject import dagger.hilt.android.lifecycle.HiltViewModel
import org.tasks.ui.CompletableViewModel import org.tasks.ui.CompletableViewModel
import javax.inject.Inject
class UpdateCaldavAccountViewModel @ViewModelInject constructor( @HiltViewModel
class UpdateCaldavAccountViewModel @Inject constructor(
private val provider: CaldavClientProvider private val provider: CaldavClientProvider
) : CompletableViewModel<String>() { ) : CompletableViewModel<String>() {
suspend fun updateCaldavAccount(url: String, username: String, password: String) { suspend fun updateCaldavAccount(url: String, username: String, password: String) {

@ -1,11 +1,13 @@
package org.tasks.caldav package org.tasks.caldav
import androidx.hilt.lifecycle.ViewModelInject import dagger.hilt.android.lifecycle.HiltViewModel
import org.tasks.data.CaldavAccount import org.tasks.data.CaldavAccount
import org.tasks.data.CaldavCalendar import org.tasks.data.CaldavCalendar
import org.tasks.ui.CompletableViewModel import org.tasks.ui.CompletableViewModel
import javax.inject.Inject
class UpdateCalendarViewModel @ViewModelInject constructor( @HiltViewModel
class UpdateCalendarViewModel @Inject constructor(
private val provider: CaldavClientProvider private val provider: CaldavClientProvider
) : CompletableViewModel<String?>() { ) : CompletableViewModel<String?>() {
suspend fun updateCalendar(account: CaldavAccount, calendar: CaldavCalendar, name: String, color: Int) { suspend fun updateCalendar(account: CaldavAccount, calendar: CaldavCalendar, name: String, color: Int) {

@ -1,9 +1,11 @@
package org.tasks.etebase package org.tasks.etebase
import androidx.hilt.lifecycle.ViewModelInject import dagger.hilt.android.lifecycle.HiltViewModel
import org.tasks.ui.CompletableViewModel import org.tasks.ui.CompletableViewModel
import javax.inject.Inject
class AddEtebaseAccountViewModel @ViewModelInject constructor( @HiltViewModel
class AddEtebaseAccountViewModel @Inject constructor(
private val clientProvider: EtebaseClientProvider): CompletableViewModel<String>() { private val clientProvider: EtebaseClientProvider): CompletableViewModel<String>() {
suspend fun addAccount(url: String, username: String, password: String) { suspend fun addAccount(url: String, username: String, password: String) {
run { run {

@ -1,10 +1,12 @@
package org.tasks.etebase package org.tasks.etebase
import androidx.hilt.lifecycle.ViewModelInject import dagger.hilt.android.lifecycle.HiltViewModel
import org.tasks.data.CaldavAccount import org.tasks.data.CaldavAccount
import org.tasks.ui.CompletableViewModel import org.tasks.ui.CompletableViewModel
import javax.inject.Inject
class CreateCalendarViewModel @ViewModelInject constructor( @HiltViewModel
class CreateCalendarViewModel @Inject constructor(
private val clientProvider: EtebaseClientProvider) : CompletableViewModel<String?>() { private val clientProvider: EtebaseClientProvider) : CompletableViewModel<String?>() {
suspend fun createCalendar(account: CaldavAccount, name: String, color: Int) { suspend fun createCalendar(account: CaldavAccount, name: String, color: Int) {
run { clientProvider.forAccount(account).makeCollection(name, color) } run { clientProvider.forAccount(account).makeCollection(name, color) }

@ -1,11 +1,13 @@
package org.tasks.etebase package org.tasks.etebase
import androidx.hilt.lifecycle.ViewModelInject import dagger.hilt.android.lifecycle.HiltViewModel
import org.tasks.data.CaldavAccount import org.tasks.data.CaldavAccount
import org.tasks.data.CaldavCalendar import org.tasks.data.CaldavCalendar
import org.tasks.ui.ActionViewModel import org.tasks.ui.ActionViewModel
import javax.inject.Inject
class DeleteCalendarViewModel @ViewModelInject constructor( @HiltViewModel
class DeleteCalendarViewModel @Inject constructor(
private val clientProvider: EtebaseClientProvider) : ActionViewModel() { private val clientProvider: EtebaseClientProvider) : ActionViewModel() {
suspend fun deleteCalendar(account: CaldavAccount, calendar: CaldavCalendar) { suspend fun deleteCalendar(account: CaldavAccount, calendar: CaldavCalendar) {
run { clientProvider.forAccount(account).deleteCollection(calendar) } run { clientProvider.forAccount(account).deleteCollection(calendar) }

@ -1,11 +1,13 @@
package org.tasks.etebase package org.tasks.etebase
import androidx.hilt.lifecycle.ViewModelInject import dagger.hilt.android.lifecycle.HiltViewModel
import org.tasks.data.CaldavAccount import org.tasks.data.CaldavAccount
import org.tasks.data.CaldavCalendar import org.tasks.data.CaldavCalendar
import org.tasks.ui.CompletableViewModel import org.tasks.ui.CompletableViewModel
import javax.inject.Inject
class UpdateCalendarViewModel @ViewModelInject constructor( @HiltViewModel
class UpdateCalendarViewModel @Inject constructor(
private val clientProvider: EtebaseClientProvider): CompletableViewModel<String?>() { private val clientProvider: EtebaseClientProvider): CompletableViewModel<String?>() {
suspend fun updateCalendar(account: CaldavAccount, calendar: CaldavCalendar, name: String, color: Int) { suspend fun updateCalendar(account: CaldavAccount, calendar: CaldavCalendar, name: String, color: Int) {
run { clientProvider.forAccount(account).updateCollection(calendar, name, color) } run { clientProvider.forAccount(account).updateCollection(calendar, name, color) }

@ -1,10 +1,12 @@
package org.tasks.etebase package org.tasks.etebase
import androidx.hilt.lifecycle.ViewModelInject import dagger.hilt.android.lifecycle.HiltViewModel
import org.tasks.Strings.isNullOrEmpty import org.tasks.Strings.isNullOrEmpty
import org.tasks.ui.CompletableViewModel import org.tasks.ui.CompletableViewModel
import javax.inject.Inject
class UpdateEtebaseAccountViewModel @ViewModelInject constructor( @HiltViewModel
class UpdateEtebaseAccountViewModel @Inject constructor(
private val clientProvider: EtebaseClientProvider) : CompletableViewModel<String>() { private val clientProvider: EtebaseClientProvider) : CompletableViewModel<String>() {
suspend fun updateAccount(url: String, user: String, pass: String?, session: String) { suspend fun updateAccount(url: String, user: String, pass: String?, session: String) {
run { run {

@ -1,12 +1,14 @@
package org.tasks.etesync package org.tasks.etesync
import androidx.core.util.Pair import androidx.core.util.Pair
import androidx.hilt.lifecycle.ViewModelInject
import com.etesync.journalmanager.UserInfoManager.UserInfo import com.etesync.journalmanager.UserInfoManager.UserInfo
import dagger.hilt.android.lifecycle.HiltViewModel
import org.tasks.ui.CompletableViewModel import org.tasks.ui.CompletableViewModel
import javax.inject.Inject
@Deprecated("use etebase") @Deprecated("use etebase")
class AddEteSyncAccountViewModel @ViewModelInject constructor( @HiltViewModel
class AddEteSyncAccountViewModel @Inject constructor(
private val client: EteSyncClient): CompletableViewModel<Pair<UserInfo, String>>() { private val client: EteSyncClient): CompletableViewModel<Pair<UserInfo, String>>() {
suspend fun addAccount(url: String, username: String, password: String) { suspend fun addAccount(url: String, username: String, password: String) {
run { run {

@ -1,11 +1,13 @@
package org.tasks.etesync package org.tasks.etesync
import androidx.hilt.lifecycle.ViewModelInject import dagger.hilt.android.lifecycle.HiltViewModel
import org.tasks.data.CaldavAccount import org.tasks.data.CaldavAccount
import org.tasks.ui.CompletableViewModel import org.tasks.ui.CompletableViewModel
import javax.inject.Inject
@Deprecated("use etebase") @Deprecated("use etebase")
class CreateCalendarViewModel @ViewModelInject constructor( @HiltViewModel
class CreateCalendarViewModel @Inject constructor(
private val client: EteSyncClient) : CompletableViewModel<String?>() { private val client: EteSyncClient) : CompletableViewModel<String?>() {
suspend fun createCalendar(account: CaldavAccount, name: String, color: Int) { suspend fun createCalendar(account: CaldavAccount, name: String, color: Int) {
run { client.forAccount(account).makeCollection(name, color) } run { client.forAccount(account).makeCollection(name, color) }

@ -1,11 +1,13 @@
package org.tasks.etesync package org.tasks.etesync
import androidx.hilt.lifecycle.ViewModelInject import dagger.hilt.android.lifecycle.HiltViewModel
import org.tasks.data.CaldavAccount import org.tasks.data.CaldavAccount
import org.tasks.ui.CompletableViewModel import org.tasks.ui.CompletableViewModel
import javax.inject.Inject
@Deprecated("use etebase") @Deprecated("use etebase")
class CreateUserInfoViewModel @ViewModelInject constructor( @HiltViewModel
class CreateUserInfoViewModel @Inject constructor(
private val client: EteSyncClient): CompletableViewModel<String>() { private val client: EteSyncClient): CompletableViewModel<String>() {
suspend fun createUserInfo(caldavAccount: CaldavAccount, derivedKey: String) { suspend fun createUserInfo(caldavAccount: CaldavAccount, derivedKey: String) {
run { run {

@ -1,12 +1,14 @@
package org.tasks.etesync package org.tasks.etesync
import androidx.hilt.lifecycle.ViewModelInject import dagger.hilt.android.lifecycle.HiltViewModel
import org.tasks.data.CaldavAccount import org.tasks.data.CaldavAccount
import org.tasks.data.CaldavCalendar import org.tasks.data.CaldavCalendar
import org.tasks.ui.ActionViewModel import org.tasks.ui.ActionViewModel
import javax.inject.Inject
@Deprecated("use etebase") @Deprecated("use etebase")
class DeleteCalendarViewModel @ViewModelInject constructor( @HiltViewModel
class DeleteCalendarViewModel @Inject constructor(
private val client: EteSyncClient) : ActionViewModel() { private val client: EteSyncClient) : ActionViewModel() {
suspend fun deleteCalendar(account: CaldavAccount, calendar: CaldavCalendar) { suspend fun deleteCalendar(account: CaldavAccount, calendar: CaldavCalendar) {
run { client.forAccount(account).deleteCollection(calendar) } run { client.forAccount(account).deleteCollection(calendar) }

@ -1,12 +1,14 @@
package org.tasks.etesync package org.tasks.etesync
import androidx.hilt.lifecycle.ViewModelInject import dagger.hilt.android.lifecycle.HiltViewModel
import org.tasks.data.CaldavAccount import org.tasks.data.CaldavAccount
import org.tasks.data.CaldavCalendar import org.tasks.data.CaldavCalendar
import org.tasks.ui.CompletableViewModel import org.tasks.ui.CompletableViewModel
import javax.inject.Inject
@Deprecated("use etebase") @Deprecated("use etebase")
class UpdateCalendarViewModel @ViewModelInject constructor( @HiltViewModel
class UpdateCalendarViewModel @Inject constructor(
private val client: EteSyncClient): CompletableViewModel<String?>() { private val client: EteSyncClient): CompletableViewModel<String?>() {
suspend fun updateCalendar(account: CaldavAccount, calendar: CaldavCalendar, name: String, color: Int) { suspend fun updateCalendar(account: CaldavAccount, calendar: CaldavCalendar, name: String, color: Int) {
run { client.forAccount(account).updateCollection(calendar, name, color) } run { client.forAccount(account).updateCollection(calendar, name, color) }

@ -1,13 +1,15 @@
package org.tasks.etesync package org.tasks.etesync
import androidx.core.util.Pair import androidx.core.util.Pair
import androidx.hilt.lifecycle.ViewModelInject
import com.etesync.journalmanager.UserInfoManager.UserInfo import com.etesync.journalmanager.UserInfoManager.UserInfo
import dagger.hilt.android.lifecycle.HiltViewModel
import org.tasks.Strings.isNullOrEmpty import org.tasks.Strings.isNullOrEmpty
import org.tasks.ui.CompletableViewModel import org.tasks.ui.CompletableViewModel
import javax.inject.Inject
@Deprecated("use etebase") @Deprecated("use etebase")
class UpdateEteSyncAccountViewModel @ViewModelInject constructor( @HiltViewModel
class UpdateEteSyncAccountViewModel @Inject constructor(
private val client: EteSyncClient) : CompletableViewModel<Pair<UserInfo, String>>() { private val client: EteSyncClient) : CompletableViewModel<Pair<UserInfo, String>>() {
suspend fun updateAccount(url: String, user: String, pass: String?, token: String) { suspend fun updateAccount(url: String, user: String, pass: String?, token: String) {
run { run {

@ -1,17 +1,19 @@
package org.tasks.jobs package org.tasks.jobs
import android.content.Context import android.content.Context
import androidx.hilt.Assisted import androidx.hilt.work.HiltWorker
import androidx.hilt.work.WorkerInject
import androidx.work.WorkerParameters import androidx.work.WorkerParameters
import com.todoroo.astrid.gcal.GCalHelper import com.todoroo.astrid.gcal.GCalHelper
import com.todoroo.astrid.repeats.RepeatTaskHelper import com.todoroo.astrid.repeats.RepeatTaskHelper
import dagger.assisted.Assisted
import dagger.assisted.AssistedInject
import org.tasks.analytics.Firebase import org.tasks.analytics.Firebase
import org.tasks.data.CaldavDao import org.tasks.data.CaldavDao
import org.tasks.data.TaskDao import org.tasks.data.TaskDao
import org.tasks.injection.BaseWorker import org.tasks.injection.BaseWorker
class AfterSaveWork @WorkerInject constructor( @HiltWorker
class AfterSaveWork @AssistedInject constructor(
@Assisted context: Context, @Assisted context: Context,
@Assisted workerParams: WorkerParameters, @Assisted workerParams: WorkerParameters,
firebase: Firebase, firebase: Firebase,

@ -3,10 +3,11 @@ package org.tasks.jobs
import android.content.ContentResolver import android.content.ContentResolver
import android.content.Context import android.content.Context
import androidx.documentfile.provider.DocumentFile import androidx.documentfile.provider.DocumentFile
import androidx.hilt.Assisted import androidx.hilt.work.HiltWorker
import androidx.hilt.work.WorkerInject
import androidx.work.WorkerParameters import androidx.work.WorkerParameters
import com.todoroo.andlib.utility.DateUtilities import com.todoroo.andlib.utility.DateUtilities
import dagger.assisted.Assisted
import dagger.assisted.AssistedInject
import org.tasks.R import org.tasks.R
import org.tasks.analytics.Firebase import org.tasks.analytics.Firebase
import org.tasks.backup.BackupConstants import org.tasks.backup.BackupConstants
@ -17,7 +18,8 @@ import java.io.File
import java.io.FileFilter import java.io.FileFilter
import java.util.* import java.util.*
class BackupWork @WorkerInject constructor( @HiltWorker
class BackupWork @AssistedInject constructor(
@Assisted context: Context, @Assisted context: Context,
@Assisted workerParams: WorkerParameters, @Assisted workerParams: WorkerParameters,
firebase: Firebase, firebase: Firebase,

@ -1,22 +1,27 @@
package org.tasks.jobs package org.tasks.jobs
import android.content.Context import android.content.Context
import androidx.hilt.Assisted import androidx.hilt.work.HiltWorker
import androidx.hilt.work.WorkerInject
import androidx.work.WorkerParameters import androidx.work.WorkerParameters
import com.todoroo.astrid.alarms.AlarmService import com.todoroo.astrid.alarms.AlarmService
import com.todoroo.astrid.reminders.ReminderService import com.todoroo.astrid.reminders.ReminderService
import com.todoroo.astrid.timers.TimerPlugin import com.todoroo.astrid.timers.TimerPlugin
import dagger.assisted.Assisted
import dagger.assisted.AssistedInject
import kotlinx.coroutines.runBlocking import kotlinx.coroutines.runBlocking
import org.tasks.analytics.Firebase import org.tasks.analytics.Firebase
import org.tasks.data.* import org.tasks.data.DeletionDao
import org.tasks.data.LocationDao
import org.tasks.data.TaskAttachmentDao
import org.tasks.data.UserActivityDao
import org.tasks.files.FileHelper import org.tasks.files.FileHelper
import org.tasks.injection.BaseWorker import org.tasks.injection.BaseWorker
import org.tasks.location.GeofenceApi import org.tasks.location.GeofenceApi
import org.tasks.notifications.NotificationManager import org.tasks.notifications.NotificationManager
import timber.log.Timber import timber.log.Timber
class CleanupWork @WorkerInject constructor( @HiltWorker
class CleanupWork @AssistedInject constructor(
@Assisted context: Context, @Assisted context: Context,
@Assisted workerParams: WorkerParameters, @Assisted workerParams: WorkerParameters,
firebase: Firebase, firebase: Firebase,

@ -2,12 +2,13 @@ package org.tasks.jobs
import android.content.Context import android.content.Context
import android.net.Uri import android.net.Uri
import androidx.hilt.Assisted import androidx.hilt.work.HiltWorker
import androidx.hilt.work.WorkerInject
import androidx.work.Data import androidx.work.Data
import androidx.work.WorkerParameters import androidx.work.WorkerParameters
import com.google.api.client.googleapis.json.GoogleJsonResponseException import com.google.api.client.googleapis.json.GoogleJsonResponseException
import com.google.api.services.drive.model.File import com.google.api.services.drive.model.File
import dagger.assisted.Assisted
import dagger.assisted.AssistedInject
import org.tasks.LocalBroadcastManager import org.tasks.LocalBroadcastManager
import org.tasks.R import org.tasks.R
import org.tasks.Strings.isNullOrEmpty import org.tasks.Strings.isNullOrEmpty
@ -25,7 +26,8 @@ import java.net.SocketTimeoutException
import java.net.UnknownHostException import java.net.UnknownHostException
import javax.net.ssl.SSLException import javax.net.ssl.SSLException
class DriveUploader @WorkerInject constructor( @HiltWorker
class DriveUploader @AssistedInject constructor(
@Assisted context: Context, @Assisted context: Context,
@Assisted workerParams: WorkerParameters, @Assisted workerParams: WorkerParameters,
firebase: Firebase, firebase: Firebase,

@ -1,13 +1,15 @@
package org.tasks.jobs package org.tasks.jobs
import android.content.Context import android.content.Context
import androidx.hilt.Assisted import androidx.hilt.work.HiltWorker
import androidx.hilt.work.WorkerInject
import androidx.work.WorkerParameters import androidx.work.WorkerParameters
import dagger.assisted.Assisted
import dagger.assisted.AssistedInject
import org.tasks.LocalBroadcastManager import org.tasks.LocalBroadcastManager
import org.tasks.analytics.Firebase import org.tasks.analytics.Firebase
class MidnightRefreshWork @WorkerInject constructor( @HiltWorker
class MidnightRefreshWork @AssistedInject constructor(
@Assisted context: Context, @Assisted context: Context,
@Assisted workerParams: WorkerParameters, @Assisted workerParams: WorkerParameters,
firebase: Firebase, firebase: Firebase,

@ -1,9 +1,10 @@
package org.tasks.jobs package org.tasks.jobs
import android.content.Context import android.content.Context
import androidx.hilt.Assisted import androidx.hilt.work.HiltWorker
import androidx.hilt.work.WorkerInject
import androidx.work.WorkerParameters import androidx.work.WorkerParameters
import dagger.assisted.Assisted
import dagger.assisted.AssistedInject
import org.tasks.R import org.tasks.R
import org.tasks.analytics.Firebase import org.tasks.analytics.Firebase
import org.tasks.caldav.CaldavClientProvider import org.tasks.caldav.CaldavClientProvider
@ -12,7 +13,8 @@ import org.tasks.injection.BaseWorker
import org.tasks.preferences.Preferences import org.tasks.preferences.Preferences
import org.tasks.sync.SyncAdapters import org.tasks.sync.SyncAdapters
class MigrateLocalWork @WorkerInject constructor( @HiltWorker
class MigrateLocalWork @AssistedInject constructor(
@Assisted context: Context, @Assisted context: Context,
@Assisted workerParams: WorkerParameters, @Assisted workerParams: WorkerParameters,
firebase: Firebase, firebase: Firebase,

@ -1,14 +1,16 @@
package org.tasks.jobs package org.tasks.jobs
import android.content.Context import android.content.Context
import androidx.hilt.Assisted import androidx.hilt.work.HiltWorker
import androidx.hilt.work.WorkerInject
import androidx.work.WorkerParameters import androidx.work.WorkerParameters
import dagger.assisted.Assisted
import dagger.assisted.AssistedInject
import org.tasks.LocalBroadcastManager import org.tasks.LocalBroadcastManager
import org.tasks.analytics.Firebase import org.tasks.analytics.Firebase
import org.tasks.scheduling.RefreshScheduler import org.tasks.scheduling.RefreshScheduler
class RefreshWork @WorkerInject constructor( @HiltWorker
class RefreshWork @AssistedInject constructor(
@Assisted context: Context, @Assisted context: Context,
@Assisted workerParams: WorkerParameters, @Assisted workerParams: WorkerParameters,
firebase: Firebase, firebase: Firebase,

@ -1,13 +1,15 @@
package org.tasks.jobs package org.tasks.jobs
import android.content.Context import android.content.Context
import androidx.hilt.Assisted import androidx.hilt.work.HiltWorker
import androidx.hilt.work.WorkerInject
import androidx.work.WorkerParameters import androidx.work.WorkerParameters
import dagger.assisted.Assisted
import dagger.assisted.AssistedInject
import org.tasks.analytics.Firebase import org.tasks.analytics.Firebase
import org.tasks.injection.BaseWorker import org.tasks.injection.BaseWorker
class RemoteConfigWork @WorkerInject constructor( @HiltWorker
class RemoteConfigWork @AssistedInject constructor(
@Assisted context: Context, @Assisted context: Context,
@Assisted workerParams: WorkerParameters, @Assisted workerParams: WorkerParameters,
firebase: Firebase) : BaseWorker(context, workerParams, firebase) { firebase: Firebase) : BaseWorker(context, workerParams, firebase) {

@ -1,9 +1,10 @@
package org.tasks.jobs package org.tasks.jobs
import android.content.Context import android.content.Context
import androidx.hilt.Assisted import androidx.hilt.work.HiltWorker
import androidx.hilt.work.WorkerInject
import androidx.work.WorkerParameters import androidx.work.WorkerParameters
import dagger.assisted.Assisted
import dagger.assisted.AssistedInject
import org.tasks.LocalBroadcastManager import org.tasks.LocalBroadcastManager
import org.tasks.analytics.Firebase import org.tasks.analytics.Firebase
import org.tasks.data.LocationDao import org.tasks.data.LocationDao
@ -12,7 +13,8 @@ import org.tasks.location.Geocoder
import timber.log.Timber import timber.log.Timber
import java.io.IOException import java.io.IOException
class ReverseGeocodeWork @WorkerInject constructor( @HiltWorker
class ReverseGeocodeWork @AssistedInject constructor(
@Assisted context: Context, @Assisted context: Context,
@Assisted workerParams: WorkerParameters, @Assisted workerParams: WorkerParameters,
firebase: Firebase, firebase: Firebase,

@ -1,9 +1,10 @@
package org.tasks.jobs package org.tasks.jobs
import android.content.Context import android.content.Context
import androidx.hilt.Assisted import androidx.hilt.work.HiltWorker
import androidx.hilt.work.WorkerInject
import androidx.work.WorkerParameters import androidx.work.WorkerParameters
import dagger.assisted.Assisted
import dagger.assisted.AssistedInject
import kotlinx.coroutines.* import kotlinx.coroutines.*
import org.tasks.LocalBroadcastManager import org.tasks.LocalBroadcastManager
import org.tasks.R import org.tasks.R
@ -15,7 +16,8 @@ import org.tasks.data.CaldavAccount.Companion.TYPE_TASKS
import org.tasks.data.CaldavDao import org.tasks.data.CaldavDao
import org.tasks.preferences.Preferences import org.tasks.preferences.Preferences
class SyncCaldavWork @WorkerInject constructor( @HiltWorker
class SyncCaldavWork @AssistedInject constructor(
@Assisted context: Context, @Assisted context: Context,
@Assisted workerParams: WorkerParameters, @Assisted workerParams: WorkerParameters,
firebase: Firebase, firebase: Firebase,

@ -1,9 +1,10 @@
package org.tasks.jobs package org.tasks.jobs
import android.content.Context import android.content.Context
import androidx.hilt.Assisted import androidx.hilt.work.HiltWorker
import androidx.hilt.work.WorkerInject
import androidx.work.WorkerParameters import androidx.work.WorkerParameters
import dagger.assisted.Assisted
import dagger.assisted.AssistedInject
import kotlinx.coroutines.* import kotlinx.coroutines.*
import org.tasks.LocalBroadcastManager import org.tasks.LocalBroadcastManager
import org.tasks.R import org.tasks.R
@ -14,7 +15,8 @@ import org.tasks.etesync.EteSynchronizer
import org.tasks.preferences.Preferences import org.tasks.preferences.Preferences
@Deprecated("use etebase") @Deprecated("use etebase")
class SyncEteSyncWork @WorkerInject constructor( @HiltWorker
class SyncEteSyncWork @AssistedInject constructor(
@Assisted context: Context, @Assisted context: Context,
@Assisted workerParams: WorkerParameters, @Assisted workerParams: WorkerParameters,
firebase: Firebase, firebase: Firebase,

@ -1,9 +1,10 @@
package org.tasks.jobs package org.tasks.jobs
import android.content.Context import android.content.Context
import androidx.hilt.Assisted import androidx.hilt.work.HiltWorker
import androidx.hilt.work.WorkerInject
import androidx.work.WorkerParameters import androidx.work.WorkerParameters
import dagger.assisted.Assisted
import dagger.assisted.AssistedInject
import kotlinx.coroutines.* import kotlinx.coroutines.*
import org.tasks.LocalBroadcastManager import org.tasks.LocalBroadcastManager
import org.tasks.R import org.tasks.R
@ -13,7 +14,8 @@ import org.tasks.data.CaldavDao
import org.tasks.etebase.EtebaseSynchronizer import org.tasks.etebase.EtebaseSynchronizer
import org.tasks.preferences.Preferences import org.tasks.preferences.Preferences
class SyncEtebaseWork @WorkerInject constructor( @HiltWorker
class SyncEtebaseWork @AssistedInject constructor(
@Assisted context: Context, @Assisted context: Context,
@Assisted workerParams: WorkerParameters, @Assisted workerParams: WorkerParameters,
firebase: Firebase, firebase: Firebase,

@ -1,9 +1,10 @@
package org.tasks.jobs package org.tasks.jobs
import android.content.Context import android.content.Context
import androidx.hilt.Assisted import androidx.hilt.work.HiltWorker
import androidx.hilt.work.WorkerInject
import androidx.work.WorkerParameters import androidx.work.WorkerParameters
import dagger.assisted.Assisted
import dagger.assisted.AssistedInject
import kotlinx.coroutines.* import kotlinx.coroutines.*
import org.tasks.LocalBroadcastManager import org.tasks.LocalBroadcastManager
import org.tasks.R import org.tasks.R
@ -12,7 +13,8 @@ import org.tasks.data.GoogleTaskListDao
import org.tasks.gtasks.GoogleTaskSynchronizer import org.tasks.gtasks.GoogleTaskSynchronizer
import org.tasks.preferences.Preferences import org.tasks.preferences.Preferences
class SyncGoogleTasksWork @WorkerInject constructor( @HiltWorker
class SyncGoogleTasksWork @AssistedInject constructor(
@Assisted context: Context, @Assisted context: Context,
@Assisted workerParams: WorkerParameters, @Assisted workerParams: WorkerParameters,
firebase: Firebase, firebase: Firebase,

@ -4,9 +4,10 @@ import android.accounts.AccountManager
import android.content.ContentResolver import android.content.ContentResolver
import android.content.Context import android.content.Context
import android.os.Bundle import android.os.Bundle
import androidx.hilt.Assisted import androidx.hilt.work.HiltWorker
import androidx.hilt.work.WorkerInject
import androidx.work.WorkerParameters import androidx.work.WorkerParameters
import dagger.assisted.Assisted
import dagger.assisted.AssistedInject
import org.tasks.LocalBroadcastManager import org.tasks.LocalBroadcastManager
import org.tasks.R import org.tasks.R
import org.tasks.analytics.Firebase import org.tasks.analytics.Firebase
@ -17,7 +18,8 @@ import org.tasks.data.OpenTaskDao.Companion.SUPPORTED_TYPES
import org.tasks.opentasks.OpenTasksSynchronizer import org.tasks.opentasks.OpenTasksSynchronizer
import org.tasks.preferences.Preferences import org.tasks.preferences.Preferences
class SyncOpenTasksWork @WorkerInject constructor( @HiltWorker
class SyncOpenTasksWork @AssistedInject constructor(
@Assisted context: Context, @Assisted context: Context,
@Assisted workerParams: WorkerParameters, @Assisted workerParams: WorkerParameters,
firebase: Firebase, firebase: Firebase,

@ -1,17 +1,19 @@
package org.tasks.jobs package org.tasks.jobs
import android.content.Context import android.content.Context
import androidx.hilt.Assisted import androidx.hilt.work.HiltWorker
import androidx.hilt.work.WorkerInject
import androidx.work.WorkerParameters import androidx.work.WorkerParameters
import com.todoroo.astrid.gcal.GCalHelper import com.todoroo.astrid.gcal.GCalHelper
import dagger.assisted.Assisted
import dagger.assisted.AssistedInject
import org.tasks.analytics.Firebase import org.tasks.analytics.Firebase
import org.tasks.calendars.CalendarEventProvider import org.tasks.calendars.CalendarEventProvider
import org.tasks.data.TaskDao import org.tasks.data.TaskDao
import org.tasks.injection.BaseWorker import org.tasks.injection.BaseWorker
import org.tasks.preferences.PermissionChecker import org.tasks.preferences.PermissionChecker
class UpdateCalendarWork @WorkerInject constructor( @HiltWorker
class UpdateCalendarWork @AssistedInject constructor(
@Assisted context: Context, @Assisted context: Context,
@Assisted workerParams: WorkerParameters, @Assisted workerParams: WorkerParameters,
firebase: Firebase, firebase: Firebase,

@ -90,7 +90,6 @@ class LocationPickerActivity : InjectingAppCompatActivity(), Toolbar.OnMenuItemC
@Inject lateinit var theme: Theme @Inject lateinit var theme: Theme
@Inject lateinit var toaster: Toaster @Inject lateinit var toaster: Toaster
@Inject lateinit var locationDao: LocationDao @Inject lateinit var locationDao: LocationDao
@Inject lateinit var searchProvider: PlaceSearchProvider
@Inject lateinit var permissionChecker: PermissionChecker @Inject lateinit var permissionChecker: PermissionChecker
@Inject lateinit var permissionRequestor: ActivityPermissionRequestor @Inject lateinit var permissionRequestor: ActivityPermissionRequestor
@Inject lateinit var dialogBuilder: DialogBuilder @Inject lateinit var dialogBuilder: DialogBuilder
@ -174,7 +173,7 @@ class LocationPickerActivity : InjectingAppCompatActivity(), Toolbar.OnMenuItemC
appBarLayout.post { expandToolbar(false) } appBarLayout.post { expandToolbar(false) }
} }
findViewById<View>(map.markerId).visibility = View.VISIBLE findViewById<View>(map.markerId).visibility = View.VISIBLE
searchAdapter = LocationSearchAdapter(searchProvider.getAttributionRes(dark), this) searchAdapter = LocationSearchAdapter(viewModel.getAttributionRes(dark), this)
recentsAdapter = LocationPickerAdapter(this, inventory, colorProvider, this) recentsAdapter = LocationPickerAdapter(this, inventory, colorProvider, this)
recentsAdapter!!.setHasStableIds(true) recentsAdapter!!.setHasStableIds(true)
recyclerView.layoutManager = LinearLayoutManager(this) recyclerView.layoutManager = LinearLayoutManager(this)

@ -1,17 +1,19 @@
package org.tasks.location package org.tasks.location
import android.os.Bundle import android.os.Bundle
import androidx.hilt.lifecycle.ViewModelInject
import androidx.lifecycle.LifecycleOwner import androidx.lifecycle.LifecycleOwner
import androidx.lifecycle.MutableLiveData import androidx.lifecycle.MutableLiveData
import androidx.lifecycle.Observer import androidx.lifecycle.Observer
import androidx.lifecycle.ViewModel import androidx.lifecycle.ViewModel
import com.todoroo.andlib.utility.AndroidUtilities import com.todoroo.andlib.utility.AndroidUtilities
import dagger.hilt.android.lifecycle.HiltViewModel
import org.tasks.Event import org.tasks.Event
import org.tasks.Strings.isNullOrEmpty import org.tasks.Strings.isNullOrEmpty
import org.tasks.data.Place import org.tasks.data.Place
import javax.inject.Inject
class PlaceSearchViewModel @ViewModelInject constructor( @HiltViewModel
class PlaceSearchViewModel @Inject constructor(
private val searchProvider: PlaceSearchProvider private val searchProvider: PlaceSearchProvider
): ViewModel() { ): ViewModel() {
private val searchResults = MutableLiveData<List<PlaceSearchResult>>() private val searchResults = MutableLiveData<List<PlaceSearchResult>>()
@ -52,4 +54,6 @@ class PlaceSearchViewModel @ViewModelInject constructor(
private fun setError(message: String) { private fun setError(message: String) {
error.value = Event(message) error.value = Event(message)
} }
fun getAttributionRes(dark: Boolean) = searchProvider.getAttributionRes(dark)
} }

@ -3,11 +3,11 @@ package org.tasks.preferences
import android.content.ContentResolver import android.content.ContentResolver
import android.content.Context import android.content.Context
import androidx.documentfile.provider.DocumentFile import androidx.documentfile.provider.DocumentFile
import androidx.hilt.lifecycle.ViewModelInject
import androidx.lifecycle.MutableLiveData import androidx.lifecycle.MutableLiveData
import androidx.lifecycle.ViewModel import androidx.lifecycle.ViewModel
import androidx.lifecycle.viewModelScope import androidx.lifecycle.viewModelScope
import com.google.api.services.drive.DriveScopes import com.google.api.services.drive.DriveScopes
import dagger.hilt.android.lifecycle.HiltViewModel
import dagger.hilt.android.qualifiers.ApplicationContext import dagger.hilt.android.qualifiers.ApplicationContext
import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.launch import kotlinx.coroutines.launch
@ -20,8 +20,10 @@ import org.tasks.googleapis.InvokerFactory
import org.tasks.gtasks.GoogleAccountManager import org.tasks.gtasks.GoogleAccountManager
import timber.log.Timber import timber.log.Timber
import java.io.File import java.io.File
import javax.inject.Inject
class PreferencesViewModel @ViewModelInject constructor( @HiltViewModel
class PreferencesViewModel @Inject constructor(
@ApplicationContext private val context: Context, @ApplicationContext private val context: Context,
private val preferences: Preferences, private val preferences: Preferences,
invokers: InvokerFactory, invokers: InvokerFactory,

@ -1,16 +1,18 @@
package org.tasks.preferences.fragments package org.tasks.preferences.fragments
import androidx.hilt.lifecycle.ViewModelInject
import androidx.lifecycle.MutableLiveData import androidx.lifecycle.MutableLiveData
import androidx.lifecycle.ViewModel import androidx.lifecycle.ViewModel
import androidx.lifecycle.viewModelScope import androidx.lifecycle.viewModelScope
import dagger.hilt.android.lifecycle.HiltViewModel
import kotlinx.coroutines.launch import kotlinx.coroutines.launch
import org.json.JSONObject import org.json.JSONObject
import org.tasks.caldav.CaldavClientProvider import org.tasks.caldav.CaldavClientProvider
import org.tasks.data.CaldavAccount import org.tasks.data.CaldavAccount
import timber.log.Timber import timber.log.Timber
import javax.inject.Inject
class TasksAccountViewModel @ViewModelInject constructor( @HiltViewModel
class TasksAccountViewModel @Inject constructor(
private val provider: CaldavClientProvider private val provider: CaldavClientProvider
) : ViewModel() { ) : ViewModel() {
val newPassword = MutableLiveData<AppPassword?>() val newPassword = MutableLiveData<AppPassword?>()

@ -1,15 +1,17 @@
package org.tasks.tags package org.tasks.tags
import androidx.hilt.lifecycle.ViewModelInject
import androidx.lifecycle.* import androidx.lifecycle.*
import dagger.hilt.android.lifecycle.HiltViewModel
import kotlinx.coroutines.launch import kotlinx.coroutines.launch
import org.tasks.Strings.isNullOrEmpty import org.tasks.Strings.isNullOrEmpty
import org.tasks.data.TagData import org.tasks.data.TagData
import org.tasks.data.TagDataDao import org.tasks.data.TagDataDao
import org.tasks.tags.CheckBoxTriStates.State import org.tasks.tags.CheckBoxTriStates.State
import java.util.* import java.util.*
import javax.inject.Inject
class TagPickerViewModel @ViewModelInject constructor( @HiltViewModel
class TagPickerViewModel @Inject constructor(
private val tagDataDao: TagDataDao private val tagDataDao: TagDataDao
) : ViewModel() { ) : ViewModel() {

@ -2,7 +2,6 @@ package org.tasks.ui
import android.content.Context import android.content.Context
import androidx.annotation.MainThread import androidx.annotation.MainThread
import androidx.hilt.lifecycle.ViewModelInject
import androidx.lifecycle.MutableLiveData import androidx.lifecycle.MutableLiveData
import androidx.lifecycle.ViewModel import androidx.lifecycle.ViewModel
import com.google.ical.values.RRule import com.google.ical.values.RRule
@ -23,6 +22,7 @@ import com.todoroo.astrid.service.TaskCompleter
import com.todoroo.astrid.service.TaskDeleter import com.todoroo.astrid.service.TaskDeleter
import com.todoroo.astrid.service.TaskMover import com.todoroo.astrid.service.TaskMover
import com.todoroo.astrid.timers.TimerPlugin import com.todoroo.astrid.timers.TimerPlugin
import dagger.hilt.android.lifecycle.HiltViewModel
import dagger.hilt.android.qualifiers.ApplicationContext import dagger.hilt.android.qualifiers.ApplicationContext
import kotlinx.collections.immutable.ImmutableList import kotlinx.collections.immutable.ImmutableList
import kotlinx.collections.immutable.ImmutableSet import kotlinx.collections.immutable.ImmutableSet
@ -44,8 +44,10 @@ import org.tasks.time.DateTimeUtils.currentTimeMillis
import org.tasks.time.DateTimeUtils.startOfDay import org.tasks.time.DateTimeUtils.startOfDay
import timber.log.Timber import timber.log.Timber
import java.text.ParseException import java.text.ParseException
import javax.inject.Inject
class TaskEditViewModel @ViewModelInject constructor( @HiltViewModel
class TaskEditViewModel @Inject constructor(
@ApplicationContext private val context: Context, @ApplicationContext private val context: Context,
private val taskDao: TaskDao, private val taskDao: TaskDao,
private val taskDeleter: TaskDeleter, private val taskDeleter: TaskDeleter,

@ -1,6 +1,5 @@
package org.tasks.ui package org.tasks.ui
import androidx.hilt.lifecycle.ViewModelInject
import androidx.lifecycle.* import androidx.lifecycle.*
import androidx.paging.LivePagedListBuilder import androidx.paging.LivePagedListBuilder
import androidx.paging.PagedList import androidx.paging.PagedList
@ -8,6 +7,7 @@ import androidx.sqlite.db.SimpleSQLiteQuery
import com.todoroo.andlib.utility.AndroidUtilities import com.todoroo.andlib.utility.AndroidUtilities
import com.todoroo.andlib.utility.DateUtilities import com.todoroo.andlib.utility.DateUtilities
import com.todoroo.astrid.api.Filter import com.todoroo.astrid.api.Filter
import dagger.hilt.android.lifecycle.HiltViewModel
import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.launch import kotlinx.coroutines.launch
import org.tasks.BuildConfig import org.tasks.BuildConfig
@ -17,8 +17,10 @@ import org.tasks.data.TaskDao
import org.tasks.data.TaskListQuery.getQuery import org.tasks.data.TaskListQuery.getQuery
import org.tasks.preferences.Preferences import org.tasks.preferences.Preferences
import timber.log.Timber import timber.log.Timber
import javax.inject.Inject
class TaskListViewModel @ViewModelInject constructor( @HiltViewModel
class TaskListViewModel @Inject constructor(
private val preferences: Preferences, private val preferences: Preferences,
private val taskDao: TaskDao) : ViewModel(), Observer<PagedList<TaskContainer>> { private val taskDao: TaskDao) : ViewModel(), Observer<PagedList<TaskContainer>> {

@ -14,8 +14,8 @@ object Versions {
const val mockito = "3.3.3" const val mockito = "3.3.3"
const val androidx_test = "1.3.0" const val androidx_test = "1.3.0"
const val make_it_easy = "4.0.1" const val make_it_easy = "4.0.1"
const val hilt = "2.29.1-alpha" const val hilt = "2.31.2-alpha"
const val hilt_androidx = "1.0.0-alpha02" const val hilt_androidx = "1.0.0-alpha03"
const val lifecycle = "2.2.0" const val lifecycle = "2.2.0"
const val markwon = "4.6.0" const val markwon = "4.6.0"
} }

@ -208,24 +208,24 @@
+| +--- org.dmfs:lib-recur:0.11.4 +| +--- org.dmfs:lib-recur:0.11.4
+| | \--- org.dmfs:rfc5545-datetime:0.2.4 +| | \--- org.dmfs:rfc5545-datetime:0.2.4
+| \--- org.dmfs:jems:1.33 +| \--- org.dmfs:jems:1.33
++--- com.google.dagger:hilt-android:2.29.1-alpha ++--- com.google.dagger:hilt-android:2.31.2-alpha
+| +--- com.google.dagger:dagger:2.29.1 +| +--- com.google.dagger:dagger:2.31.2
+| | \--- javax.inject:javax.inject:1 +| | \--- javax.inject:javax.inject:1
+| +--- com.google.dagger:dagger-lint-aar:2.29.1 +| +--- com.google.dagger:dagger-lint-aar:2.31.2
+| +--- com.google.dagger:hilt-core:2.29.1-alpha +| +--- com.google.dagger:hilt-core:2.31.2-alpha
+| | +--- com.google.dagger:dagger:2.29.1 (*) +| | +--- com.google.dagger:dagger:2.31.2 (*)
+| | +--- javax.annotation:jsr250-api:1.0
+| | \--- javax.inject:javax.inject:1 +| | \--- javax.inject:javax.inject:1
+| +--- androidx.activity:activity:1.1.0 (*) +| +--- androidx.activity:activity:1.1.0 (*)
+| +--- androidx.annotation:annotation:1.1.0 +| +--- androidx.annotation:annotation:1.1.0
+| +--- androidx.fragment:fragment:1.2.0 -> 1.2.5 (*) +| +--- androidx.fragment:fragment:1.2.5 (*)
+| +--- androidx.lifecycle:lifecycle-viewmodel:2.2.0 (*) +| +--- androidx.lifecycle:lifecycle-viewmodel:2.2.0 (*)
+| +--- javax.annotation:jsr250-api:1.0 +| +--- androidx.lifecycle:lifecycle-viewmodel-savedstate:2.2.0 (*)
+| +--- androidx.savedstate:savedstate:1.0.0 (*)
+| \--- javax.inject:javax.inject:1 +| \--- javax.inject:javax.inject:1
++--- androidx.hilt:hilt-work:1.0.0-alpha02 ++--- androidx.hilt:hilt-work:1.0.0-alpha03
+| +--- androidx.annotation:annotation:1.1.0 +| +--- androidx.annotation:annotation:1.1.0
+| +--- androidx.hilt:hilt-common:1.0.0-alpha02 +| +--- androidx.hilt:hilt-common:1.0.0-alpha03
+| | \--- com.google.dagger:hilt-android:2.28-alpha -> 2.29.1-alpha (*) +| | \--- com.google.dagger:hilt-core:2.31-alpha -> 2.31.2-alpha (*)
+| +--- androidx.work:work-runtime:2.3.4 -> 2.5.0 +| +--- androidx.work:work-runtime:2.3.4 -> 2.5.0
+| | +--- com.google.guava:listenablefuture:1.0 -> 9999.0-empty-to-avoid-conflict-with-guava +| | +--- com.google.guava:listenablefuture:1.0 -> 9999.0-empty-to-avoid-conflict-with-guava
+| | +--- androidx.lifecycle:lifecycle-livedata:2.1.0 -> 2.2.0 (*) +| | +--- androidx.lifecycle:lifecycle-livedata:2.1.0 -> 2.2.0 (*)
@ -242,13 +242,13 @@
+| | +--- androidx.sqlite:sqlite-framework:2.1.0 (*) +| | +--- androidx.sqlite:sqlite-framework:2.1.0 (*)
+| | +--- androidx.core:core:1.1.0 -> 1.3.2 (*) +| | +--- androidx.core:core:1.1.0 -> 1.3.2 (*)
+| | \--- androidx.lifecycle:lifecycle-service:2.1.0 -> 2.2.0 (*) +| | \--- androidx.lifecycle:lifecycle-service:2.1.0 -> 2.2.0 (*)
+| \--- com.google.dagger:hilt-android:2.28-alpha -> 2.29.1-alpha (*) +| \--- com.google.dagger:hilt-android:2.31-alpha -> 2.31.2-alpha (*)
++--- androidx.hilt:hilt-lifecycle-viewmodel:1.0.0-alpha02 ++--- androidx.hilt:hilt-lifecycle-viewmodel:1.0.0-alpha03
+| +--- androidx.activity:activity:1.1.0 (*) +| +--- androidx.activity:activity:1.1.0 (*)
+| +--- androidx.annotation:annotation:1.1.0 +| +--- androidx.annotation:annotation:1.1.0
+| +--- androidx.hilt:hilt-common:1.0.0-alpha02 (*) +| +--- androidx.hilt:hilt-common:1.0.0-alpha03 (*)
+| +--- androidx.lifecycle:lifecycle-viewmodel-savedstate:2.2.0 (*) +| +--- androidx.lifecycle:lifecycle-viewmodel-savedstate:2.2.0 (*)
+| \--- com.google.dagger:hilt-android:2.28-alpha -> 2.29.1-alpha (*) +| \--- com.google.dagger:hilt-android:2.31-alpha -> 2.31.2-alpha (*)
++--- androidx.fragment:fragment-ktx:1.2.5 ++--- androidx.fragment:fragment-ktx:1.2.5
+| +--- org.jetbrains.kotlin:kotlin-stdlib:1.3.50 -> 1.4.21 (*) +| +--- org.jetbrains.kotlin:kotlin-stdlib:1.3.50 -> 1.4.21 (*)
+| +--- androidx.fragment:fragment:1.2.5 (*) +| +--- androidx.fragment:fragment:1.2.5 (*)

@ -24,7 +24,7 @@
+| | +--- com.google.android.datatransport:transport-runtime:2.2.4 +| | +--- com.google.android.datatransport:transport-runtime:2.2.4
+| | | +--- androidx.annotation:annotation:1.1.0 +| | | +--- androidx.annotation:annotation:1.1.0
+| | | +--- com.google.android.datatransport:transport-api:2.2.1 (*) +| | | +--- com.google.android.datatransport:transport-api:2.2.1 (*)
+| | | \--- com.google.dagger:dagger:2.27 -> 2.29.1 +| | | \--- com.google.dagger:dagger:2.27 -> 2.31.2
+| | | \--- javax.inject:javax.inject:1 +| | | \--- javax.inject:javax.inject:1
+| | \--- com.google.firebase:firebase-encoders-json:16.1.0 -> 17.0.0 +| | \--- com.google.firebase:firebase-encoders-json:16.1.0 -> 17.0.0
+| | +--- androidx.annotation:annotation:1.1.0 +| | +--- androidx.annotation:annotation:1.1.0
@ -320,23 +320,23 @@
+| +--- org.dmfs:lib-recur:0.11.4 +| +--- org.dmfs:lib-recur:0.11.4
+| | \--- org.dmfs:rfc5545-datetime:0.2.4 +| | \--- org.dmfs:rfc5545-datetime:0.2.4
+| \--- org.dmfs:jems:1.33 +| \--- org.dmfs:jems:1.33
++--- com.google.dagger:hilt-android:2.29.1-alpha ++--- com.google.dagger:hilt-android:2.31.2-alpha
+| +--- com.google.dagger:dagger:2.29.1 (*) +| +--- com.google.dagger:dagger:2.31.2 (*)
+| +--- com.google.dagger:dagger-lint-aar:2.29.1 +| +--- com.google.dagger:dagger-lint-aar:2.31.2
+| +--- com.google.dagger:hilt-core:2.29.1-alpha +| +--- com.google.dagger:hilt-core:2.31.2-alpha
+| | +--- com.google.dagger:dagger:2.29.1 (*) +| | +--- com.google.dagger:dagger:2.31.2 (*)
+| | +--- javax.annotation:jsr250-api:1.0
+| | \--- javax.inject:javax.inject:1 +| | \--- javax.inject:javax.inject:1
+| +--- androidx.activity:activity:1.1.0 (*) +| +--- androidx.activity:activity:1.1.0 (*)
+| +--- androidx.annotation:annotation:1.1.0 +| +--- androidx.annotation:annotation:1.1.0
+| +--- androidx.fragment:fragment:1.2.0 -> 1.2.5 (*) +| +--- androidx.fragment:fragment:1.2.5 (*)
+| +--- androidx.lifecycle:lifecycle-viewmodel:2.2.0 (*) +| +--- androidx.lifecycle:lifecycle-viewmodel:2.2.0 (*)
+| +--- javax.annotation:jsr250-api:1.0 +| +--- androidx.lifecycle:lifecycle-viewmodel-savedstate:2.2.0 (*)
+| +--- androidx.savedstate:savedstate:1.0.0 (*)
+| \--- javax.inject:javax.inject:1 +| \--- javax.inject:javax.inject:1
++--- androidx.hilt:hilt-work:1.0.0-alpha02 ++--- androidx.hilt:hilt-work:1.0.0-alpha03
+| +--- androidx.annotation:annotation:1.1.0 +| +--- androidx.annotation:annotation:1.1.0
+| +--- androidx.hilt:hilt-common:1.0.0-alpha02 +| +--- androidx.hilt:hilt-common:1.0.0-alpha03
+| | \--- com.google.dagger:hilt-android:2.28-alpha -> 2.29.1-alpha (*) +| | \--- com.google.dagger:hilt-core:2.31-alpha -> 2.31.2-alpha (*)
+| +--- androidx.work:work-runtime:2.3.4 -> 2.5.0 +| +--- androidx.work:work-runtime:2.3.4 -> 2.5.0
+| | +--- com.google.guava:listenablefuture:1.0 -> 9999.0-empty-to-avoid-conflict-with-guava +| | +--- com.google.guava:listenablefuture:1.0 -> 9999.0-empty-to-avoid-conflict-with-guava
+| | +--- androidx.lifecycle:lifecycle-livedata:2.1.0 -> 2.2.0 (*) +| | +--- androidx.lifecycle:lifecycle-livedata:2.1.0 -> 2.2.0 (*)
@ -353,13 +353,13 @@
+| | +--- androidx.sqlite:sqlite-framework:2.1.0 (*) +| | +--- androidx.sqlite:sqlite-framework:2.1.0 (*)
+| | +--- androidx.core:core:1.1.0 -> 1.3.2 (*) +| | +--- androidx.core:core:1.1.0 -> 1.3.2 (*)
+| | \--- androidx.lifecycle:lifecycle-service:2.1.0 -> 2.2.0 (*) +| | \--- androidx.lifecycle:lifecycle-service:2.1.0 -> 2.2.0 (*)
+| \--- com.google.dagger:hilt-android:2.28-alpha -> 2.29.1-alpha (*) +| \--- com.google.dagger:hilt-android:2.31-alpha -> 2.31.2-alpha (*)
++--- androidx.hilt:hilt-lifecycle-viewmodel:1.0.0-alpha02 ++--- androidx.hilt:hilt-lifecycle-viewmodel:1.0.0-alpha03
+| +--- androidx.activity:activity:1.1.0 (*) +| +--- androidx.activity:activity:1.1.0 (*)
+| +--- androidx.annotation:annotation:1.1.0 +| +--- androidx.annotation:annotation:1.1.0
+| +--- androidx.hilt:hilt-common:1.0.0-alpha02 (*) +| +--- androidx.hilt:hilt-common:1.0.0-alpha03 (*)
+| +--- androidx.lifecycle:lifecycle-viewmodel-savedstate:2.2.0 (*) +| +--- androidx.lifecycle:lifecycle-viewmodel-savedstate:2.2.0 (*)
+| \--- com.google.dagger:hilt-android:2.28-alpha -> 2.29.1-alpha (*) +| \--- com.google.dagger:hilt-android:2.31-alpha -> 2.31.2-alpha (*)
++--- androidx.fragment:fragment-ktx:1.2.5 ++--- androidx.fragment:fragment-ktx:1.2.5
+| +--- org.jetbrains.kotlin:kotlin-stdlib:1.3.50 -> 1.4.21 (*) +| +--- org.jetbrains.kotlin:kotlin-stdlib:1.3.50 -> 1.4.21 (*)
+| +--- androidx.fragment:fragment:1.2.5 (*) +| +--- androidx.fragment:fragment:1.2.5 (*)

Loading…
Cancel
Save