new: add theme support with GwenedegTheme to take dark mode into account

This commit is contained in:
2026-06-11 18:06:16 +02:00
parent 0c6e620c3f
commit 627eff3b0a
3 changed files with 26 additions and 3 deletions
@@ -1,6 +1,5 @@
package fr.ajaury.gwenedeg
import androidx.compose.material3.MaterialTheme
import androidx.compose.runtime.Composable
import androidx.compose.runtime.mutableStateListOf
import androidx.compose.runtime.saveable.rememberSerializable
@@ -12,6 +11,7 @@ import fr.ajaury.gwenedeg.di.appModule
import fr.ajaury.gwenedeg.navigation.Route
import fr.ajaury.gwenedeg.player.ui.PlayerScreen
import fr.ajaury.gwenedeg.records.ui.RecordsScreen
import fr.ajaury.gwenedeg.theme.GwenedegTheme
import org.koin.compose.KoinApplication
import org.koin.dsl.koinConfiguration
@@ -28,7 +28,7 @@ fun App() {
mutableStateListOf(Route.Records)
}
MaterialTheme {
GwenedegTheme {
NavDisplay(
backStack = backStack,
onBack = { backStack.removeLastOrNull() },
@@ -0,0 +1,23 @@
package fr.ajaury.gwenedeg.theme
import androidx.compose.foundation.isSystemInDarkTheme
import androidx.compose.material3.MaterialTheme
import androidx.compose.material3.darkColorScheme
import androidx.compose.material3.lightColorScheme
import androidx.compose.runtime.Composable
private val DarkColorScheme = darkColorScheme()
private val LightColorScheme = lightColorScheme()
@Composable
fun GwenedegTheme(
darkTheme: Boolean = isSystemInDarkTheme(),
content: @Composable () -> Unit,
) {
val colorScheme = if (darkTheme) DarkColorScheme else LightColorScheme
MaterialTheme(
colorScheme = colorScheme,
content = content,
)
}