Loading app/ui/legacy/src/main/java/com/fsck/k9/ui/managefolders/KoinModule.kt +1 −1 Original line number Diff line number Diff line Loading @@ -4,6 +4,6 @@ import org.koin.androidx.viewmodel.dsl.viewModel import org.koin.dsl.module val manageFoldersUiModule = module { viewModel { ManageFoldersViewModel(foldersLiveDataFactory = get()) } viewModel { ManageFoldersViewModel(folderRepository = get()) } viewModel { FolderSettingsViewModel(preferences = get(), folderRepository = get(), messagingController = get()) } } app/ui/legacy/src/main/java/com/fsck/k9/ui/managefolders/ManageFoldersViewModel.kt +7 −14 Original line number Diff line number Diff line package com.fsck.k9.ui.managefolders import androidx.lifecycle.LiveData import androidx.lifecycle.ViewModel import androidx.lifecycle.asLiveData import com.fsck.k9.Account import com.fsck.k9.ui.folders.FoldersLiveData import com.fsck.k9.ui.folders.FoldersLiveDataFactory import com.fsck.k9.mailstore.DisplayFolder import com.fsck.k9.mailstore.FolderRepository class ManageFoldersViewModel(private val foldersLiveDataFactory: FoldersLiveDataFactory) : ViewModel() { private var foldersLiveData: FoldersLiveData? = null fun getFolders(account: Account): FoldersLiveData { val liveData = foldersLiveData if (liveData != null && liveData.account.uuid == account.uuid) { return liveData } return foldersLiveDataFactory.create(account).also { foldersLiveData = it } class ManageFoldersViewModel(private val folderRepository: FolderRepository) : ViewModel() { fun getFolders(account: Account): LiveData<List<DisplayFolder>> { return folderRepository.getDisplayFoldersFlow(account).asLiveData() } } Loading
app/ui/legacy/src/main/java/com/fsck/k9/ui/managefolders/KoinModule.kt +1 −1 Original line number Diff line number Diff line Loading @@ -4,6 +4,6 @@ import org.koin.androidx.viewmodel.dsl.viewModel import org.koin.dsl.module val manageFoldersUiModule = module { viewModel { ManageFoldersViewModel(foldersLiveDataFactory = get()) } viewModel { ManageFoldersViewModel(folderRepository = get()) } viewModel { FolderSettingsViewModel(preferences = get(), folderRepository = get(), messagingController = get()) } }
app/ui/legacy/src/main/java/com/fsck/k9/ui/managefolders/ManageFoldersViewModel.kt +7 −14 Original line number Diff line number Diff line package com.fsck.k9.ui.managefolders import androidx.lifecycle.LiveData import androidx.lifecycle.ViewModel import androidx.lifecycle.asLiveData import com.fsck.k9.Account import com.fsck.k9.ui.folders.FoldersLiveData import com.fsck.k9.ui.folders.FoldersLiveDataFactory import com.fsck.k9.mailstore.DisplayFolder import com.fsck.k9.mailstore.FolderRepository class ManageFoldersViewModel(private val foldersLiveDataFactory: FoldersLiveDataFactory) : ViewModel() { private var foldersLiveData: FoldersLiveData? = null fun getFolders(account: Account): FoldersLiveData { val liveData = foldersLiveData if (liveData != null && liveData.account.uuid == account.uuid) { return liveData } return foldersLiveDataFactory.create(account).also { foldersLiveData = it } class ManageFoldersViewModel(private val folderRepository: FolderRepository) : ViewModel() { fun getFolders(account: Account): LiveData<List<DisplayFolder>> { return folderRepository.getDisplayFoldersFlow(account).asLiveData() } }