mirror of
https://github.com/Aviortheking/Neo-Store.git
synced 2025-06-20 14:19:19 +00:00
Add: Add new repo button
This commit is contained in:
@ -28,7 +28,7 @@ class RepoItem(val item: Repository) :
|
||||
else
|
||||
context.getColorFromAttr(R.attr.colorOnBackground)
|
||||
|
||||
binding.repoName.text = item.name
|
||||
binding.repoName.text = item.name.ifEmpty { context.getString(R.string.new_repository) }
|
||||
binding.repoDescription.text = item.description.trim()
|
||||
|
||||
binding.repoItem.setCardBackgroundColor(
|
||||
|
@ -3,8 +3,13 @@ package com.looker.droidify.ui.viewmodels
|
||||
import androidx.lifecycle.MediatorLiveData
|
||||
import androidx.lifecycle.ViewModel
|
||||
import androidx.lifecycle.ViewModelProvider
|
||||
import androidx.lifecycle.viewModelScope
|
||||
import com.looker.droidify.database.DatabaseX
|
||||
import com.looker.droidify.database.entity.Repository
|
||||
import com.looker.droidify.database.entity.Repository.Companion.newRepository
|
||||
import kotlinx.coroutines.Dispatchers
|
||||
import kotlinx.coroutines.launch
|
||||
import kotlinx.coroutines.withContext
|
||||
|
||||
class RepositoriesViewModelX(val db: DatabaseX) : ViewModel() {
|
||||
|
||||
@ -14,6 +19,16 @@ class RepositoriesViewModelX(val db: DatabaseX) : ViewModel() {
|
||||
repositories.addSource(db.repositoryDao.allLive, repositories::setValue)
|
||||
}
|
||||
|
||||
fun addRepository() {
|
||||
viewModelScope.launch {
|
||||
addNewRepository()
|
||||
}
|
||||
}
|
||||
|
||||
private suspend fun addNewRepository() {
|
||||
withContext(Dispatchers.IO) { db.repositoryDao.insert(newRepository()) }
|
||||
}
|
||||
|
||||
class Factory(val db: DatabaseX) : ViewModelProvider.Factory {
|
||||
@Suppress("unchecked_cast")
|
||||
override fun <T : ViewModel> create(modelClass: Class<T>): T {
|
||||
|
Reference in New Issue
Block a user