bugfix: use List instead of Collection for ModelDao's deletion
This commit is contained in:
parent
5de0b5d6d0
commit
290a6bfebe
|
|
@ -16,7 +16,7 @@ interface ModelDao {
|
|||
suspend fun getModelById(id: String): ModelEntity?
|
||||
|
||||
@Query("SELECT * FROM models WHERE id IN (:ids)")
|
||||
suspend fun getModelsByIds(ids: Collection<String>): List<ModelEntity>
|
||||
suspend fun getModelsByIds(ids: List<String>): List<ModelEntity>
|
||||
|
||||
@Insert(onConflict = OnConflictStrategy.REPLACE)
|
||||
suspend fun insertModel(model: ModelEntity)
|
||||
|
|
|
|||
|
|
@ -44,7 +44,7 @@ interface ModelRepository {
|
|||
suspend fun importModel(uri: Uri, progressTracker: ImportProgressTracker? = null): ModelInfo
|
||||
|
||||
suspend fun deleteModel(modelId: String)
|
||||
suspend fun deleteModels(modelIds: Collection<String>)
|
||||
suspend fun deleteModels(modelIds: List<String>)
|
||||
|
||||
fun interface ImportProgressTracker {
|
||||
fun onProgress(progress: Float) // 0.0f to 1.0f
|
||||
|
|
@ -229,7 +229,7 @@ class ModelRepositoryImpl @Inject constructor(
|
|||
}
|
||||
}
|
||||
|
||||
override suspend fun deleteModels(modelIds: Collection<String>) {
|
||||
override suspend fun deleteModels(modelIds: List<String>) {
|
||||
modelDao.getModelsByIds(modelIds).let { models ->
|
||||
models.forEach { model ->
|
||||
File(model.path).let {
|
||||
|
|
|
|||
|
|
@ -137,6 +137,7 @@ fun ModelsManagementScreen(
|
|||
onClick = {
|
||||
// Delete selected
|
||||
if (selectedModels.isNotEmpty()) {
|
||||
// TODO-han.yin: pop up an AlertDialog asking user for confirmation
|
||||
viewModel.deleteModels(selectedModels)
|
||||
exitSelectionMode()
|
||||
}
|
||||
|
|
|
|||
|
|
@ -73,7 +73,7 @@ class ModelsManagementViewModel @Inject constructor(
|
|||
|
||||
fun deleteModels(models: Map<String, ModelInfo>) =
|
||||
viewModelScope.launch {
|
||||
modelRepository.deleteModels(models.keys)
|
||||
modelRepository.deleteModels(models.keys.toList())
|
||||
}
|
||||
|
||||
private val _importState = MutableStateFlow<ModelImportState>(ModelImportState.Idle)
|
||||
|
|
|
|||
Loading…
Reference in New Issue