What's Changed
- Feature: Add "Fixed" Colors by @jordond in #332
- Add DynamicMaterialExpressiveTheme for Material 3 Expressive by @jordond in #333
Material Expressive
This release adds support for Material 3 Expressive, via some new Composable functions:
@OptIn(ExperimentalMaterial3ExpressiveApi::class)
@Composable
fun MyExpressiveTheme(
seedColor: Color,
isDark: Boolean = isSystemInDarkTheme(),
content: @Composable () -> Unit
) {
DynamicMaterialExpressiveTheme(
seedColor = seedColor,
motionScheme = MotionScheme.expressive(),
isDark = isDark,
animate = true,
content = content,
)
}
If instead you want to use MaterialExpressiveTheme
directly, you can create the ColorScheme
like so:
val scheme = rememberDynamicColorScheme(
seedColor = seedColor,
isDark = isDark,
specVersion = ColorSpec.SpecVersion.SPEC_2025,
style = PaletteStyle.Expressive,
)
MaterialExpressiveTheme(
colorScheme = scheme,
motionScheme = MotionScheme.expressive(),
)
Note: This and the previous release rely on ComposeMultiplatform 1.9.0-alpha02, which might be a problem for your project. Make sure you check the Known Issues before upgrading.
Full Changelog: 3.0.0-beta06...3.0.0-beta07