The Material 3 Expressive update (M3 1.4+) added a handful of new shape-driven components that aren't wrapped yet. Lower priority than the core button/FAB gaps, but worth tracking together.
Missing composables
| Composable |
Kt class |
SplitButtonLayout (+ leading/trailing button slots) |
SplitButtonKt, SplitButtonDefaults |
ButtonGroup |
ButtonGroupKt |
LoadingIndicator (containerless) |
LoadingIndicatorKt |
ContainedLoadingIndicator |
LoadingIndicatorKt |
Notes
SplitButtonLayout is a multi-slot composable (leading button + trailing dropdown button) — model with named slot properties on the facade type, like AlertDialog.
ButtonGroup exposes a ButtonGroupScope receiver for children with per-item weight modifiers — same scope-receiver pattern as the segmented button rows. Can probably ship without the scope helpers first.
LoadingIndicator is the new wavy/morphing indicator that replaces CircularProgressIndicator in M3 Expressive contexts. ContainedLoadingIndicator is the "with surface background" variant.
- Verify these APIs are present in the version of
Xamarin.AndroidX.Compose.Material3 we're pinned to before starting; if they're newer than 1.4.0.x we may need a NuGet bump first.
Tracking
Long-term dotnet/java-interop#1440.
The Material 3 Expressive update (M3 1.4+) added a handful of new shape-driven components that aren't wrapped yet. Lower priority than the core button/FAB gaps, but worth tracking together.
Missing composables
SplitButtonLayout(+ leading/trailing button slots)SplitButtonKt,SplitButtonDefaultsButtonGroupButtonGroupKtLoadingIndicator(containerless)LoadingIndicatorKtContainedLoadingIndicatorLoadingIndicatorKtNotes
SplitButtonLayoutis a multi-slot composable (leading button + trailing dropdown button) — model with named slot properties on the facade type, likeAlertDialog.ButtonGroupexposes aButtonGroupScopereceiver for children with per-item weight modifiers — same scope-receiver pattern as the segmented button rows. Can probably ship without the scope helpers first.LoadingIndicatoris the new wavy/morphing indicator that replacesCircularProgressIndicatorin M3 Expressive contexts.ContainedLoadingIndicatoris the "with surface background" variant.Xamarin.AndroidX.Compose.Material3we're pinned to before starting; if they're newer than 1.4.0.x we may need a NuGet bump first.Tracking
Long-term dotnet/java-interop#1440.