Only the base FloatingActionButton is wrapped. Material 3 1.4 ships size variants (Small, Large) and an extended (icon + label) variant — none are bindable today.
Missing composables (bindable in Xamarin.AndroidX.Compose.Material3 1.4.0.3)
| Composable |
Kt class |
Notes |
SmallFloatingActionButton |
FloatingActionButtonKt |
SmallFloatingActionButton-X-z6DiA — same shape as existing FAB |
LargeFloatingActionButton |
FloatingActionButtonKt |
LargeFloatingActionButton-X-z6DiA — same shape |
ExtendedFloatingActionButton (single content) |
FloatingActionButtonKt |
ExtendedFloatingActionButton-X-z6DiA — Function3<RowScope, …> content slot |
ExtendedFloatingActionButton (icon + text + expanded) |
FloatingActionButtonKt |
ExtendedFloatingActionButton-ElI5-7k — multi-slot (icon, text, expanded:Boolean) |
The M3 Expressive variants (MediumFloatingActionButton, FloatingActionButtonMenu, ToggleFloatingActionButton) are tracked separately in #103 — they need a newer Material3 NuGet.
Approach
Same as the existing FloatingActionButton — all four are hash-mangled (FloatingActionButton-X-z6DiA) because of Color / Dp inline-class parameters, so they need [ComposeBridge] partials + declarative [ComposeDefaults] enums.
The single-content ExtendedFloatingActionButton can use [ComposeFacade(Scope = "Row")] (same as Button/IconButton content). The icon/text overload has two slot lambdas — model the same way AlertDialog exposes named slot properties cleared from the defaults bitmask per call.
Tracking
Long-term, dotnet/java-interop#1440 lets the bridges collapse into the generated bindings.
Only the base
FloatingActionButtonis wrapped. Material 3 1.4 ships size variants (Small, Large) and an extended (icon + label) variant — none are bindable today.Missing composables (bindable in
Xamarin.AndroidX.Compose.Material31.4.0.3)SmallFloatingActionButtonFloatingActionButtonKtSmallFloatingActionButton-X-z6DiA— same shape as existing FABLargeFloatingActionButtonFloatingActionButtonKtLargeFloatingActionButton-X-z6DiA— same shapeExtendedFloatingActionButton(single content)FloatingActionButtonKtExtendedFloatingActionButton-X-z6DiA—Function3<RowScope, …>content slotExtendedFloatingActionButton(icon + text + expanded)FloatingActionButtonKtExtendedFloatingActionButton-ElI5-7k— multi-slot (icon,text,expanded:Boolean)The M3 Expressive variants (
MediumFloatingActionButton,FloatingActionButtonMenu,ToggleFloatingActionButton) are tracked separately in #103 — they need a newer Material3 NuGet.Approach
Same as the existing
FloatingActionButton— all four are hash-mangled (FloatingActionButton-X-z6DiA) because ofColor/Dpinline-class parameters, so they need[ComposeBridge]partials + declarative[ComposeDefaults]enums.The single-content
ExtendedFloatingActionButtoncan use[ComposeFacade(Scope = "Row")](same asButton/IconButtoncontent). The icon/text overload has two slot lambdas — model the same wayAlertDialogexposes named slot properties cleared from thedefaultsbitmask per call.Tracking
Long-term, dotnet/java-interop#1440 lets the bridges collapse into the generated bindings.