
commonMain.com.softartdev.theme.pref.ThemePrefs.kt Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of theme-prefs-desktop Show documentation
Show all versions of theme-prefs-desktop Show documentation
Kotlin Multiplatform library for easy switching Dark/Light Material themes on Compose.
package com.softartdev.theme.pref
import androidx.compose.runtime.*
val LocalThemePrefs = staticCompositionLocalOf {
error("CompositionLocal LocalThemePrefs not present")
}
abstract class ThemePrefs(
val preferenceHelper: PreferenceHelper,
val dialogHolder: DialogHolder = DialogHolder(),
) {
val darkThemeState: MutableState = mutableStateOf(preferenceHelper.themeEnum)
@Composable
fun showDialogIfNeed() = dialogHolder.showDialogIfNeed()
}
object PreferableMaterialTheme {
val themePrefs: ThemePrefs
@Composable
@ReadOnlyComposable
get() = LocalThemePrefs.current
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy