WIP: Hilt integration
TODO: https://developer.android.com/develop/ui/compose/libraries#hilt-navigation
This commit is contained in:
parent
fb9983c6df
commit
f8d046f3f6
6 changed files with 44 additions and 2 deletions
|
|
@ -3,6 +3,8 @@ plugins {
|
|||
alias(libs.plugins.kotlin.android)
|
||||
alias(libs.plugins.kotlin.compose)
|
||||
alias(libs.plugins.kotlin.serialization)
|
||||
alias(libs.plugins.ksp)
|
||||
alias(libs.plugins.hilt)
|
||||
}
|
||||
|
||||
android {
|
||||
|
|
@ -51,6 +53,8 @@ dependencies {
|
|||
implementation(libs.androidx.material3)
|
||||
implementation(libs.androidx.navigation.compose)
|
||||
implementation(libs.kotlinx.serialization)
|
||||
implementation(libs.hilt.android)
|
||||
ksp(libs.hilt.compiler)
|
||||
|
||||
testImplementation(libs.junit)
|
||||
|
||||
|
|
|
|||
11
app/src/main/java/com/dnsc/plaindo/PlaindoApplication.kt
Normal file
11
app/src/main/java/com/dnsc/plaindo/PlaindoApplication.kt
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
package com.dnsc.plaindo
|
||||
|
||||
import android.app.Application
|
||||
import dagger.hilt.android.HiltAndroidApp
|
||||
|
||||
@HiltAndroidApp
|
||||
class PlaindoApplication: Application() {
|
||||
override fun onCreate() {
|
||||
super.onCreate()
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,18 @@
|
|||
package com.dnsc.plaindo.ui.models
|
||||
|
||||
import androidx.lifecycle.SavedStateHandle
|
||||
import androidx.lifecycle.ViewModel
|
||||
import com.dnsc.plaindo.data.Todo
|
||||
import com.dnsc.plaindo.data.TodoFileRepository
|
||||
import dagger.hilt.android.lifecycle.HiltViewModel
|
||||
import javax.inject.Inject
|
||||
|
||||
@HiltViewModel
|
||||
class MainViewModel @Inject constructor(
|
||||
private val savedStateHandle: SavedStateHandle,
|
||||
private val todoFileRepository: TodoFileRepository
|
||||
): ViewModel() {
|
||||
fun getAllTodos(): List<Todo> {
|
||||
return todoFileRepository.todos
|
||||
}
|
||||
}
|
||||
|
|
@ -7,10 +7,12 @@ import androidx.compose.material3.Text
|
|||
import androidx.compose.runtime.Composable
|
||||
import androidx.compose.ui.Modifier
|
||||
import androidx.navigation.NavHostController
|
||||
import com.dnsc.plaindo.ui.components.TopBar
|
||||
import com.dnsc.plaindo.ui.models.MainViewModel
|
||||
|
||||
@Composable
|
||||
fun PlaindoOverviewScreen(navController: NavHostController, innerPadding: PaddingValues) {
|
||||
val mainViewModel: MainViewModel = hiltViewModel()
|
||||
|
||||
Column(modifier = Modifier.padding(innerPadding)) {
|
||||
Text(text = "Overview")
|
||||
}
|
||||
|
|
|
|||
Reference in a new issue