|
@@ -95,23 +95,13 @@ fun ProvideColorSchemeOverride(
|
|
|
overrideIsDark: Boolean? = null,
|
|
overrideIsDark: Boolean? = null,
|
|
|
content: @Composable () -> Unit,
|
|
content: @Composable () -> Unit,
|
|
|
) {
|
|
) {
|
|
|
- val themeAnimationSpec = tween<Color>(
|
|
|
|
|
- durationMillis = 700,
|
|
|
|
|
- easing = FastOutSlowInEasing
|
|
|
|
|
- )
|
|
|
|
|
val baseThemeMode = LocalLegadoThemeColors.current
|
|
val baseThemeMode = LocalLegadoThemeColors.current
|
|
|
- val animatedColorScheme = colorScheme.animateColorSchemeAsState(themeAnimationSpec)
|
|
|
|
|
- val animatedSeedColor = animateColorAsState(
|
|
|
|
|
- targetValue = seedColor,
|
|
|
|
|
- animationSpec = themeAnimationSpec,
|
|
|
|
|
- label = "theme_seed_animation"
|
|
|
|
|
- ).value
|
|
|
|
|
- val legadoColorScheme = remember(animatedColorScheme) { animatedColorScheme.toLegadoColorScheme() }
|
|
|
|
|
|
|
+ val legadoColorScheme = remember(colorScheme) { colorScheme.toLegadoColorScheme() }
|
|
|
val resolvedIsDark = overrideIsDark ?: baseThemeMode.isDark
|
|
val resolvedIsDark = overrideIsDark ?: baseThemeMode.isDark
|
|
|
- val overrideThemeMode = remember(baseThemeMode, animatedColorScheme, animatedSeedColor, resolvedIsDark) {
|
|
|
|
|
|
|
+ val overrideThemeMode = remember(baseThemeMode, colorScheme, seedColor, resolvedIsDark) {
|
|
|
baseThemeMode.copy(
|
|
baseThemeMode.copy(
|
|
|
- colorScheme = animatedColorScheme,
|
|
|
|
|
- seedColor = animatedSeedColor,
|
|
|
|
|
|
|
+ colorScheme = colorScheme,
|
|
|
|
|
+ seedColor = seedColor,
|
|
|
isDark = resolvedIsDark,
|
|
isDark = resolvedIsDark,
|
|
|
)
|
|
)
|
|
|
}
|
|
}
|
|
@@ -131,7 +121,7 @@ fun ProvideColorSchemeOverride(
|
|
|
isMiuixEngine,
|
|
isMiuixEngine,
|
|
|
miuixColorSchemeMode,
|
|
miuixColorSchemeMode,
|
|
|
overrideThemeMode.isDark,
|
|
overrideThemeMode.isDark,
|
|
|
- animatedSeedColor,
|
|
|
|
|
|
|
+ seedColor,
|
|
|
miuixPaletteStyle,
|
|
miuixPaletteStyle,
|
|
|
miuixColorSpec
|
|
miuixColorSpec
|
|
|
) {
|
|
) {
|
|
@@ -140,7 +130,7 @@ fun ProvideColorSchemeOverride(
|
|
|
} else {
|
|
} else {
|
|
|
ThemeController(
|
|
ThemeController(
|
|
|
colorSchemeMode = miuixColorSchemeMode,
|
|
colorSchemeMode = miuixColorSchemeMode,
|
|
|
- keyColor = animatedSeedColor,
|
|
|
|
|
|
|
+ keyColor = seedColor,
|
|
|
paletteStyle = miuixPaletteStyle,
|
|
paletteStyle = miuixPaletteStyle,
|
|
|
colorSpec = miuixColorSpec,
|
|
colorSpec = miuixColorSpec,
|
|
|
isDark = overrideThemeMode.isDark
|
|
isDark = overrideThemeMode.isDark
|
|
@@ -155,7 +145,7 @@ fun ProvideColorSchemeOverride(
|
|
|
if (miuixController != null) {
|
|
if (miuixController != null) {
|
|
|
MiuixTheme(controller = miuixController) {
|
|
MiuixTheme(controller = miuixController) {
|
|
|
MaterialTheme(
|
|
MaterialTheme(
|
|
|
- colorScheme = animatedColorScheme,
|
|
|
|
|
|
|
+ colorScheme = colorScheme,
|
|
|
typography = materialTypography,
|
|
typography = materialTypography,
|
|
|
shapes = materialShapes
|
|
shapes = materialShapes
|
|
|
) {
|
|
) {
|
|
@@ -164,7 +154,7 @@ fun ProvideColorSchemeOverride(
|
|
|
}
|
|
}
|
|
|
} else {
|
|
} else {
|
|
|
MaterialTheme(
|
|
MaterialTheme(
|
|
|
- colorScheme = animatedColorScheme,
|
|
|
|
|
|
|
+ colorScheme = colorScheme,
|
|
|
typography = materialTypography,
|
|
typography = materialTypography,
|
|
|
shapes = materialShapes
|
|
shapes = materialShapes
|
|
|
) {
|
|
) {
|