Merge remote-tracking branch 'origin/main'

This commit is contained in:
Florian 2025-01-20 10:13:40 +01:00
commit 69d36abcad
3 changed files with 18 additions and 8 deletions

View File

@ -123,7 +123,7 @@ fun AddCategory(
modifier = Modifier,
"Add Category",
onClick = {
if (name.isNotBlank()) {
if (name.isNotBlank() && selectedIconIndex != -1) {
val newCategory = CategoryEntity(
_id = 0,
categoryName = name,

View File

@ -21,6 +21,7 @@ import androidx.compose.material3.Text
import androidx.compose.material3.TextButton
import androidx.compose.runtime.Composable
import androidx.compose.runtime.LaunchedEffect
import androidx.compose.runtime.collectAsState
import androidx.compose.runtime.getValue
import androidx.compose.runtime.mutableIntStateOf
import androidx.compose.runtime.mutableStateOf
@ -47,8 +48,8 @@ fun EditCategory(
) {
val category = editCategoryViewModel.categoryUi.category
var showError by remember { mutableStateOf(editCategoryViewModel.deletePossible) }
var redirect by remember { mutableStateOf(editCategoryViewModel.redirect) }
var deleteStarted by remember { mutableStateOf(false) }
val redirect by editCategoryViewModel.redirect.collectAsState()
var deleteStarted by remember { mutableStateOf(editCategoryViewModel.deleteStarted) }
var expanded by remember { mutableStateOf(false) }
var selectedIconIndex by remember { mutableIntStateOf(category.icon) }
@ -60,8 +61,11 @@ fun EditCategory(
if (deleteStarted) {
editCategoryViewModel.findEntryByCategoryId()
showError = editCategoryViewModel.deletePossible
}
}
LaunchedEffect(redirect) {
Log.w("lolo", "EditCategory: "+ redirect.toString(), )
if (redirect) {
onButtonClick()
}

View File

@ -10,6 +10,8 @@ import androidx.lifecycle.viewModelScope
import at.xaxa.ledger.data.EntryRepository
import at.xaxa.ledger.data.db.Category.CategoryEntity
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.flow.MutableStateFlow
import kotlinx.coroutines.flow.StateFlow
import kotlinx.coroutines.launch
import kotlinx.coroutines.withContext
@ -23,7 +25,10 @@ class EditCategoryViewModel(private val savedStateHandle: SavedStateHandle, priv
var categoryUi by mutableStateOf(CategoryUIState())
private set
var deletePossible by mutableStateOf(false)
var redirect by mutableStateOf(false)
var deleteStarted by mutableStateOf(false)
private var _redirect = MutableStateFlow(false)
val redirect: StateFlow<Boolean> get() = _redirect
init {
viewModelScope.launch {
@ -32,7 +37,7 @@ class EditCategoryViewModel(private val savedStateHandle: SavedStateHandle, priv
}
categoryUi = CategoryUIState(category)
redirect = false;
_redirect.value = false;
}
}
@ -61,8 +66,9 @@ class EditCategoryViewModel(private val savedStateHandle: SavedStateHandle, priv
if(fetchedEntries>0){
deletePossible = true
}else{
Log.w("lolo", "findEntryByCategoryId: "+fetchedEntries, )
deleteCategory()
redirect= true;
_redirect.value= true;
}
}
}