mirror of
https://github.com/Aviortheking/Neo-Store.git
synced 2025-04-23 19:32:16 +00:00
Fix: Adding new repo
This commit is contained in:
parent
d2adb82625
commit
cfa6a7471a
@ -13,6 +13,8 @@ import androidx.compose.runtime.collectAsState
|
||||
import androidx.compose.runtime.getValue
|
||||
import androidx.compose.runtime.remember
|
||||
import androidx.compose.ui.Modifier
|
||||
import androidx.compose.ui.res.stringResource
|
||||
import com.machiav3lli.fdroid.R
|
||||
import com.machiav3lli.fdroid.ui.compose.RepositoriesRecycler
|
||||
import com.machiav3lli.fdroid.ui.viewmodels.RepositoriesViewModelX
|
||||
|
||||
@ -23,9 +25,17 @@ fun RepositoryPage(viewModel: RepositoriesViewModelX) {
|
||||
Scaffold(
|
||||
modifier = Modifier.fillMaxSize(),
|
||||
floatingActionButton = {
|
||||
ExtendedFloatingActionButton(onClick = { viewModel.showRepositorySheet(editMode = true) }) {
|
||||
Icon(imageVector = Icons.Rounded.Add, contentDescription = "Add Repository")
|
||||
Text(text = "Add Repository")
|
||||
ExtendedFloatingActionButton(onClick = {
|
||||
viewModel.showRepositorySheet(
|
||||
editMode = true,
|
||||
addNew = true
|
||||
)
|
||||
}) {
|
||||
Icon(
|
||||
imageVector = Icons.Rounded.Add,
|
||||
contentDescription = stringResource(id = R.string.add_repository)
|
||||
)
|
||||
Text(text = stringResource(id = R.string.add_repository))
|
||||
}
|
||||
}
|
||||
) {
|
||||
|
@ -40,13 +40,17 @@ class RepositoriesViewModelX(val repositoryDao: RepositoryDao) : ViewModel() {
|
||||
viewModelScope.launch { syncConnection.bind(context) }
|
||||
}
|
||||
|
||||
fun showRepositorySheet(repositoryId: Long = 0L, editMode: Boolean = false) {
|
||||
fun showRepositorySheet(
|
||||
repositoryId: Long = 0L,
|
||||
editMode: Boolean = false,
|
||||
addNew: Boolean = false
|
||||
) {
|
||||
viewModelScope.launch {
|
||||
_showSheet.emit(
|
||||
if (editMode) {
|
||||
SheetNavigationData(repositoryId, editMode)
|
||||
} else {
|
||||
if (addNew) {
|
||||
SheetNavigationData(addNewRepository(), editMode)
|
||||
} else {
|
||||
SheetNavigationData(repositoryId, editMode)
|
||||
}
|
||||
)
|
||||
}
|
||||
@ -59,7 +63,7 @@ class RepositoriesViewModelX(val repositoryDao: RepositoryDao) : ViewModel() {
|
||||
}
|
||||
|
||||
private suspend fun addNewRepository(): Long = withContext(Dispatchers.IO) {
|
||||
repositoryDao.insert(newRepository())
|
||||
repositoryDao.insert(newRepository(address = "new repository"))
|
||||
repositoryDao.latestAddedId()
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user