Files
ovs-kmp/composeApp/src/commonMain/kotlin/dev/meloda/overseerr/App.kt
T
2025-09-28 22:09:17 +03:00

38 lines
1.1 KiB
Kotlin

package dev.meloda.overseerr
import androidx.compose.foundation.layout.fillMaxSize
import androidx.compose.material3.Surface
import androidx.compose.runtime.Composable
import androidx.compose.runtime.LaunchedEffect
import androidx.compose.runtime.getValue
import androidx.compose.ui.Modifier
import androidx.lifecycle.compose.collectAsStateWithLifecycle
import dev.meloda.overseerr.datastore.SettingsController
import dev.meloda.overseerr.screens.main.MainScreen
import dev.meloda.overseerr.theme.AppTheme
import io.github.aakira.napier.DebugAntilog
import io.github.aakira.napier.Napier
import org.koin.compose.koinInject
var appDir: String = ""
@Composable
internal fun App() {
LaunchedEffect(true) {
Napier.base(DebugAntilog())
}
val settingsController: SettingsController = koinInject()
val settings by settingsController.settings.collectAsStateWithLifecycle()
LaunchedEffect(true) {
settingsController.loadAppSettings()
}
AppTheme(themeMode = settings.themeMode) {
Surface(modifier = Modifier.fillMaxSize()) {
MainScreen()
}
}
}