BoxScope

Box content scope that exposes box-alignment modifiers.

Functions

Link copied to clipboard
fun UiTreeBuilder.AlertDialog(visible: Boolean, title: String, text: String, confirmButtonText: String, onConfirm: () -> Unit, dismissButtonText: String? = null, onDismiss: () -> Unit? = null, icon: ImageSource? = null, requestKey: String = "alert_dialog", dismissOnBackPress: Boolean = true, dismissOnClickOutside: Boolean = true, onDismissRequest: () -> Unit? = null)

Emits a standard confirmation dialog composite.

Link copied to clipboard
fun Modifier.align(alignment: BoxAlignment): Modifier

Sets a Box child's alignment inside its container.

Link copied to clipboard
fun UiTreeBuilder.Badge(count: Int? = null, containerColor: Int = BadgeDefaults.containerColor(), contentColor: Int = BadgeDefaults.contentColor(), key: Any? = null, modifier: Modifier = Modifier)

Composite Badge; null count renders a dot, and values above 99 render 99+.

Link copied to clipboard
fun UiTreeBuilder.BadgedBox(badge: UiTreeBuilder.() -> Unit, key: Any? = null, modifier: Modifier = Modifier, content: BoxScope.() -> Unit)

Box composite with a badge anchored to the top end.

Link copied to clipboard
fun UiTreeBuilder.BasicTextField(state: TextFieldState, hint: String = "", placeholder: String = hint, enabled: Boolean = true, singleLine: Boolean = true, readOnly: Boolean = false, maxLines: Int = if (singleLine) 1 else Int.MAX_VALUE, minLines: Int = if (singleLine) 1 else 1, keyboardOptions: TextFieldKeyboardOptions = TextFieldKeyboardOptions(), inputTransformation: InputTransformation? = null, receiveContent: ReceiveContentConfiguration = ReceiveContentConfiguration.Default, onKeyboardAction: (TextFieldImeAction) -> Boolean? = null, onFocusChange: (Boolean) -> Unit? = null, autofillHints: Set<TextFieldAutofillHint> = emptySet(), cursorColor: Int = TextFieldDefaults.cursorColor(), textColor: Int = TextFieldDefaults.textColor(enabled), textStyle: UiTextStyle = TextFieldDefaults.textStyle(), hintColor: Int = TextFieldDefaults.hintColor(enabled = enabled), backgroundColor: Int = 0, borderWidth: UiDp = UiDp.Zero, borderColor: Int = 0, shape: UiShape = UiShape.rounded(UiDp.Zero), minHeight: UiDp = UiDp.Zero, paddingHorizontal: UiDp = UiDp.Zero, paddingVertical: UiDp = UiDp.Zero, key: Any? = null, modifier: Modifier = Modifier)

Emits the low-level text input node without outer label or supporting text.

Link copied to clipboard
fun UiTreeBuilder.BottomAppBar(containerColor: Int = BottomAppBarDefaults.containerColor(), key: Any? = null, modifier: Modifier = Modifier, content: RowScope.() -> Unit)

Bottom app bar composite.

Link copied to clipboard
fun UiTreeBuilder.Box(key: Any? = null, contentAlignment: BoxAlignment = BoxAlignment.TopStart, rippleColor: Int? = null, modifier: Modifier = Modifier, content: BoxScope.() -> Unit)

Emits a Box container node.

Link copied to clipboard
fun UiTreeBuilder.Button(text: String, onClick: () -> Unit? = null, leadingIcon: ImageSource.Resource? = null, trailingIcon: ImageSource.Resource? = null, variant: ButtonVariant = ButtonVariant.Primary, size: ButtonSize = ButtonSize.Medium, enabled: Boolean = true, rippleColor: Int = ButtonDefaults.pressedColor(), style: UiTextStyle = ButtonDefaults.textStyle(size), key: Any? = null, modifier: Modifier = Modifier)

Emits a Button node and resolves colors, sizing, shape, and text style from theme defaults.

Link copied to clipboard
fun UiTreeBuilder.Card(onClick: () -> Unit? = null, variant: CardVariant = CardVariant.Filled, enabled: Boolean = true, key: Any? = null, modifier: Modifier = Modifier, content: BoxScope.() -> Unit)

Composite Card built from Box and Surface-like style tokens.

Link copied to clipboard
fun UiTreeBuilder.Checkbox(text: String, checked: Boolean, onCheckedChange: (Boolean) -> Unit, enabled: Boolean = true, checkedColor: Int = InputControlDefaults.checkboxCheckedColor(enabled), uncheckedColor: Int = InputControlDefaults.checkboxUncheckedColor(enabled), style: UiTextStyle = InputControlDefaults.labelStyle(), key: Any? = null, modifier: Modifier = Modifier)

Emits a checkbox node with a text label.

Link copied to clipboard
fun UiTreeBuilder.Chip(label: String, onClick: () -> Unit, variant: ChipVariant = ChipVariant.Assist, selected: Boolean = false, leadingIcon: ImageSource? = null, onTrailingIconClick: () -> Unit? = null, enabled: Boolean = true, key: Any? = null, modifier: Modifier = Modifier)

Composite Chip supporting selected/disabled states, leading icon, and trailing icon action.

Link copied to clipboard
fun UiTreeBuilder.CircularProgressIndicator(progress: Float? = null, indicatorColor: Int = ProgressIndicatorDefaults.circularIndicatorColor(), trackColor: Int = ProgressIndicatorDefaults.circularTrackColor(), size: UiDp = ProgressIndicatorDefaults.circularSize(), trackThickness: UiDp = ProgressIndicatorDefaults.circularTrackThickness(), key: Any? = null, modifier: Modifier = Modifier)

Emits a circular progress indicator node.

Link copied to clipboard
fun UiTreeBuilder.Column(key: Any? = null, spacing: UiDp = UiDp.Zero, arrangement: MainAxisArrangement = MainAxisArrangement.Start, horizontalAlignment: HorizontalAlignment = HorizontalAlignment.Start, modifier: Modifier = Modifier, content: ColumnScope.() -> Unit)

Emits a vertical linear layout node.

Link copied to clipboard
fun UiTreeBuilder.Dialog(visible: Boolean, requestKey: String = "dialog", dismissOnBackPress: Boolean = true, dismissOnClickOutside: Boolean = true, position: DialogPosition = DialogPosition.Center, scrimOpacity: Float = Theme.overlays.scrimOpacity, onDismissRequest: () -> Unit? = null, content: UiTreeBuilder.() -> Unit)

Requests a dialog overlay that hosts custom UI content.

Link copied to clipboard
fun UiTreeBuilder.Divider(color: Int = DividerDefaults.color(), thickness: UiDp = DividerDefaults.thickness(), key: Any? = null, modifier: Modifier = Modifier)

Emits a divider node.

Link copied to clipboard
fun UiTreeBuilder.DropdownMenu(expanded: Boolean, anchorId: String, onDismissRequest: () -> Unit, alignment: PopupAlignment = PopupAlignment.BelowStart, overflowPolicy: PopupOverflowPolicy = PopupOverflowPolicy.FlipThenClamp, windowMargin: UiDp = 8.dp, requestKey: String = "dropdown_menu", modifier: Modifier = Modifier, content: ColumnScope.() -> Unit)

Emits an anchored dropdown menu.

Link copied to clipboard
fun UiTreeBuilder.DropdownMenuItem(text: String, onClick: () -> Unit, leadingIcon: ImageSource? = null, trailingText: String? = null, enabled: Boolean = true, modifier: Modifier = Modifier)

Emits one selectable item inside a dropdown menu.

Link copied to clipboard
fun UiTreeBuilder.ElevatedCard(onClick: () -> Unit? = null, enabled: Boolean = true, key: Any? = null, modifier: Modifier = Modifier, content: BoxScope.() -> Unit)

Elevated convenience variant of Card.

Link copied to clipboard
fun UiTreeBuilder.EmailField(state: TextFieldState, hint: String = "", label: String = "", supportingText: String = "", keyboardOptions: TextFieldKeyboardOptions = TextFieldKeyboardOptions( keyboardType = com.viewcompose.ui.node.TextFieldType.Email, ), inputTransformation: InputTransformation? = null, receiveContent: ReceiveContentConfiguration = ReceiveContentConfiguration.Default, onKeyboardAction: (TextFieldImeAction) -> Boolean? = null, onFocusChange: (Boolean) -> Unit? = null, autofillHints: Set<TextFieldAutofillHint> = setOf(TextFieldAutofillHint.EmailAddress), variant: TextFieldVariant = TextFieldVariant.Filled, size: TextFieldSize = TextFieldSize.Medium, enabled: Boolean = true, style: UiTextStyle = TextFieldDefaults.textStyle(size), key: Any? = null, modifier: Modifier = Modifier)

Emits a single-line text field configured for email input.

Link copied to clipboard
fun emit(type: NodeType, key: Any? = null, spec: NodeSpec, modifier: Modifier = Modifier, content: UiTreeBuilder.() -> Unit? = null)

Emits one VNode and recursively builds its subtree when content is provided.

Link copied to clipboard
fun UiTreeBuilder.ExtendedFloatingActionButton(text: String, onClick: () -> Unit, icon: ImageSource? = null, containerColor: Int = FabDefaults.containerColor(), contentColor: Int = FabDefaults.contentColor(), key: Any? = null, modifier: Modifier = Modifier)

Extended FloatingActionButton with text and an optional icon.

Link copied to clipboard
fun UiTreeBuilder.FloatingActionButton(onClick: () -> Unit, size: FabSize = FabSize.Medium, containerColor: Int = FabDefaults.containerColor(), contentColor: Int = FabDefaults.contentColor(), key: Any? = null, modifier: Modifier = Modifier, content: UiTreeBuilder.() -> Unit)

Composite FloatingActionButton built from Box, theme tokens, and click modifiers.

Link copied to clipboard
fun UiTreeBuilder.FlowColumn(key: Any? = null, horizontalSpacing: UiDp = UiDp.Zero, verticalSpacing: UiDp = UiDp.Zero, maxItemsInEachColumn: Int = Int.MAX_VALUE, modifier: Modifier = Modifier, content: LayoutScope.() -> Unit)

Emits a column-flow layout node.

Link copied to clipboard
fun UiTreeBuilder.FlowRow(key: Any? = null, horizontalSpacing: UiDp = UiDp.Zero, verticalSpacing: UiDp = UiDp.Zero, maxItemsInEachRow: Int = Int.MAX_VALUE, modifier: Modifier = Modifier, content: LayoutScope.() -> Unit)

Emits a row-flow layout node.

Link copied to clipboard
fun UiTreeBuilder.HorizontalPager(currentPage: Int, onPageChanged: (Int) -> Unit, pagerState: PagerState? = null, offscreenPageLimit: Int = 1, userScrollEnabled: Boolean = true, reusePolicy: CollectionReusePolicy = CollectionReusePolicy(), motionPolicy: CollectionMotionPolicy = CollectionMotionPolicy(), key: Any? = null, modifier: Modifier = Modifier, pages: HorizontalPagerScope.() -> Unit)

Emits a HorizontalPager and creates an independent lazy item session for each page.

Link copied to clipboard
fun UiTreeBuilder.Icon(source: ImageSource, contentDescription: String? = null, tint: Int = IconDefaults.tint(), size: UiDp = IconDefaults.size(), key: Any? = null, modifier: Modifier = Modifier)

Icon-oriented convenience wrapper around Image, using ContentColor by default.

Link copied to clipboard
fun UiTreeBuilder.IconButton(icon: ImageSource, contentDescription: String? = null, onClick: () -> Unit? = null, variant: ButtonVariant = ButtonVariant.Text, size: ButtonSize = ButtonSize.Medium, tint: Int? = null, enabled: Boolean = true, key: Any? = null, modifier: Modifier = Modifier)

Emits an IconButton node and appends click semantics through Modifier.

Link copied to clipboard
fun UiTreeBuilder.Image(source: ImageSource, contentDescription: String? = null, contentScale: ImageContentScale = ImageContentScale.Fit, tint: Int? = null, placeholder: ImageSource.Resource? = null, error: ImageSource.Resource? = placeholder, fallback: ImageSource.Resource? = placeholder, key: Any? = null, modifier: Modifier = Modifier)

Emits an image node and uses the current ImageLoading loader for remote sources.

Link copied to clipboard
fun UiTreeBuilder.LazyColumn(contentPadding: LazyContentPadding = LazyContentPadding.None, spacing: UiDp = UiDp.Zero, state: LazyListState? = null, reverseLayout: Boolean = false, userScrollEnabled: Boolean = true, prefetchPolicy: LazyLayoutPrefetchPolicy = LazyLayoutPrefetchPolicy(), reusePolicy: CollectionReusePolicy = CollectionReusePolicy(), motionPolicy: CollectionMotionPolicy = CollectionMotionPolicy(), focusFollowKeyboard: Boolean = false, modifier: Modifier = Modifier, content: LazyListScope.() -> Unit)

Emits a LazyColumn from LazyListScope DSL and captures current locals for item sessions.

fun <T> UiTreeBuilder.LazyColumn(items: List<T>, key: (T) -> Any, contentType: (T) -> Any? = { null }, contentPadding: UiDp = UiDp.Zero, spacing: UiDp = UiDp.Zero, state: LazyListState? = null, reverseLayout: Boolean = false, userScrollEnabled: Boolean = true, prefetchPolicy: LazyLayoutPrefetchPolicy = LazyLayoutPrefetchPolicy(), reusePolicy: CollectionReusePolicy = CollectionReusePolicy(), motionPolicy: CollectionMotionPolicy = CollectionMotionPolicy(), focusFollowKeyboard: Boolean = false, modifier: Modifier = Modifier, itemContent: UiTreeBuilder.(T) -> Unit)

Emits a LazyColumn from list data.

Link copied to clipboard
fun UiTreeBuilder.LazyRow(contentPadding: LazyContentPadding = LazyContentPadding.None, spacing: UiDp = UiDp.Zero, state: LazyListState? = null, reverseLayout: Boolean = false, userScrollEnabled: Boolean = true, prefetchPolicy: LazyLayoutPrefetchPolicy = LazyLayoutPrefetchPolicy(), reusePolicy: CollectionReusePolicy = CollectionReusePolicy(), motionPolicy: CollectionMotionPolicy = CollectionMotionPolicy(), modifier: Modifier = Modifier, content: LazyListScope.() -> Unit)

Emits a LazyRow from LazyListScope DSL; LazyRow does not support sticky headers.

fun <T> UiTreeBuilder.LazyRow(items: List<T>, key: (T) -> Any, contentType: (T) -> Any? = { null }, contentPadding: UiDp = UiDp.Zero, spacing: UiDp = UiDp.Zero, state: LazyListState? = null, reverseLayout: Boolean = false, userScrollEnabled: Boolean = true, prefetchPolicy: LazyLayoutPrefetchPolicy = LazyLayoutPrefetchPolicy(), reusePolicy: CollectionReusePolicy = CollectionReusePolicy(), motionPolicy: CollectionMotionPolicy = CollectionMotionPolicy(), modifier: Modifier = Modifier, itemContent: UiTreeBuilder.(T) -> Unit)

Emits a LazyRow from list data.

Link copied to clipboard
fun UiTreeBuilder.LazyVerticalGrid(spanCount: Int = 2, contentPadding: LazyContentPadding = LazyContentPadding.None, horizontalSpacing: UiDp = UiDp.Zero, verticalSpacing: UiDp = UiDp.Zero, state: LazyListState? = null, reverseLayout: Boolean = false, userScrollEnabled: Boolean = true, prefetchPolicy: LazyLayoutPrefetchPolicy = LazyLayoutPrefetchPolicy(), reusePolicy: CollectionReusePolicy = CollectionReusePolicy(), motionPolicy: CollectionMotionPolicy = CollectionMotionPolicy(), focusFollowKeyboard: Boolean = false, modifier: Modifier = Modifier, content: LazyGridScope.() -> Unit)

Emits a LazyVerticalGrid from LazyGridScope DSL.

fun <T> UiTreeBuilder.LazyVerticalGrid(items: List<T>, spanCount: Int = 2, key: (T) -> Any, contentType: (T) -> Any? = { null }, span: (T) -> Int = { 1 }, contentPadding: UiDp = UiDp.Zero, horizontalSpacing: UiDp = UiDp.Zero, verticalSpacing: UiDp = UiDp.Zero, state: LazyListState? = null, reverseLayout: Boolean = false, userScrollEnabled: Boolean = true, prefetchPolicy: LazyLayoutPrefetchPolicy = LazyLayoutPrefetchPolicy(), reusePolicy: CollectionReusePolicy = CollectionReusePolicy(), motionPolicy: CollectionMotionPolicy = CollectionMotionPolicy(), focusFollowKeyboard: Boolean = false, modifier: Modifier = Modifier, itemContent: UiTreeBuilder.(T) -> Unit)

Emits a LazyVerticalGrid from list data.

Link copied to clipboard
fun UiTreeBuilder.LinearProgressIndicator(progress: Float? = null, indicatorColor: Int = ProgressIndicatorDefaults.linearIndicatorColor(), trackColor: Int = ProgressIndicatorDefaults.linearTrackColor(), trackThickness: UiDp = ProgressIndicatorDefaults.linearTrackThickness(), key: Any? = null, modifier: Modifier = Modifier)

Emits a linear progress indicator node.

Link copied to clipboard
fun UiTreeBuilder.ListItem(headlineText: String, supportingText: String? = null, overlineText: String? = null, leadingContent: UiTreeBuilder.() -> Unit? = null, trailingContent: UiTreeBuilder.() -> Unit? = null, onClick: () -> Unit? = null, key: Any? = null, modifier: Modifier = Modifier)

Standard list item composite.

Link copied to clipboard
fun UiTreeBuilder.ModalBottomSheet(visible: Boolean, requestKey: String = "bottom_sheet", dismissOnBackPress: Boolean = true, dismissOnClickOutside: Boolean = true, skipPartiallyExpanded: Boolean = false, scrimOpacity: Float = ModalBottomSheetDefaults.scrimOpacity(), navigationBarColor: Int? = ModalBottomSheetDefaults.navigationBarColor(), onDismissRequest: () -> Unit? = null, content: UiTreeBuilder.() -> Unit)

Requests a modal bottom sheet overlay.

Link copied to clipboard
fun UiTreeBuilder.NavigationBar(selectedIndex: Int, onItemSelected: (Int) -> Unit, containerColor: Int = NavigationBarDefaults.containerColor(), selectedIconColor: Int = NavigationBarDefaults.selectedIconColor(), unselectedIconColor: Int = NavigationBarDefaults.unselectedIconColor(), selectedLabelColor: Int = NavigationBarDefaults.selectedLabelColor(), unselectedLabelColor: Int = NavigationBarDefaults.unselectedLabelColor(), indicatorColor: Int = NavigationBarDefaults.indicatorColor(), rippleColor: Int = NavigationBarDefaults.rippleColor(), iconSize: UiDp = NavigationBarDefaults.iconSize(), labelSizeSp: UiSp = NavigationBarDefaults.labelSizeSp(), labelStyle: UiTextStyle = NavigationBarDefaults.labelStyle(), badgeColor: Int = NavigationBarDefaults.badgeColor(), badgeTextColor: Int = NavigationBarDefaults.badgeTextColor(), key: Any? = null, modifier: Modifier = Modifier, items: NavigationBarScope.() -> Unit)

Emits a bottom NavigationBar node.

Link copied to clipboard
fun UiTreeBuilder.NumberField(state: TextFieldState, hint: String = "", label: String = "", supportingText: String = "", keyboardOptions: TextFieldKeyboardOptions = TextFieldKeyboardOptions( keyboardType = com.viewcompose.ui.node.TextFieldType.Number, autoCorrectEnabled = false, ), inputTransformation: InputTransformation? = null, receiveContent: ReceiveContentConfiguration = ReceiveContentConfiguration.Default, onKeyboardAction: (TextFieldImeAction) -> Boolean? = null, onFocusChange: (Boolean) -> Unit? = null, autofillHints: Set<TextFieldAutofillHint> = emptySet(), variant: TextFieldVariant = TextFieldVariant.Filled, size: TextFieldSize = TextFieldSize.Medium, enabled: Boolean = true, style: UiTextStyle = TextFieldDefaults.textStyle(size), key: Any? = null, modifier: Modifier = Modifier)

Emits a single-line text field configured for numeric input.

Link copied to clipboard
fun UiTreeBuilder.OutlinedCard(onClick: () -> Unit? = null, enabled: Boolean = true, key: Any? = null, modifier: Modifier = Modifier, content: BoxScope.() -> Unit)

Outlined convenience variant of Card.

Link copied to clipboard
fun UiTreeBuilder.PasswordField(state: TextFieldState, hint: String = "", label: String = "", supportingText: String = "", keyboardOptions: TextFieldKeyboardOptions = TextFieldKeyboardOptions( keyboardType = com.viewcompose.ui.node.TextFieldType.Password, autoCorrectEnabled = false, ), inputTransformation: InputTransformation? = null, receiveContent: ReceiveContentConfiguration = ReceiveContentConfiguration.Default, onKeyboardAction: (TextFieldImeAction) -> Boolean? = null, onFocusChange: (Boolean) -> Unit? = null, autofillHints: Set<TextFieldAutofillHint> = setOf(TextFieldAutofillHint.Password), variant: TextFieldVariant = TextFieldVariant.Filled, size: TextFieldSize = TextFieldSize.Medium, enabled: Boolean = true, isError: Boolean = false, style: UiTextStyle = TextFieldDefaults.textStyle(size), key: Any? = null, modifier: Modifier = Modifier)

Emits a single-line text field configured for password input.

Link copied to clipboard
fun UiTreeBuilder.PlainTooltip(text: String, visible: Boolean, anchorId: String, alignment: PopupAlignment = PopupAlignment.BelowStart, overflowPolicy: PopupOverflowPolicy = PopupOverflowPolicy.FlipThenClamp, windowMargin: UiDp = 8.dp, dismissOnClickOutside: Boolean = true, onDismissRequest: () -> Unit? = null, requestKey: String = "tooltip")

Emits a lightweight text tooltip.

Link copied to clipboard
fun UiTreeBuilder.Popup(visible: Boolean, anchorId: String, requestKey: String = "popup", alignment: PopupAlignment = PopupAlignment.BelowStart, overflowPolicy: PopupOverflowPolicy = PopupOverflowPolicy.FlipThenClamp, windowMargin: UiDp = 8.dp, dismissOnClickOutside: Boolean = true, focusable: Boolean = true, offsetX: UiDp = UiDp.Zero, offsetY: UiDp = UiDp.Zero, onDismissRequest: () -> Unit? = null, content: UiTreeBuilder.() -> Unit)

Requests a popup overlay anchored to the given anchorId.

Link copied to clipboard

Provides context to animation APIs invoked while building content.

Link copied to clipboard

Provides override to Button and IconButton defaults while building content.

Link copied to clipboard

Provides override to Checkbox defaults while building content.

Link copied to clipboard
fun <T> UiTreeBuilder.ProvideLocal(local: UiLocal<T>, value: T, content: UiTreeBuilder.() -> Unit)

Provides one UiLocal within the content scope.

Link copied to clipboard
fun UiTreeBuilder.ProvideLocals(vararg values: UiLocalProvider, content: UiTreeBuilder.() -> Unit)

Provides multiple UiLocals in order within the content scope.

Link copied to clipboard
fun UiTreeBuilder.ProvideMonotonicFrameClock(clock: MonotonicFrameClock, content: UiTreeBuilder.() -> Unit)

Provides clock to frame-aware APIs invoked while building content.

Link copied to clipboard

Provides an overlay host within the content scope.

Link copied to clipboard

Provides override to linear and circular progress defaults while building content.

Link copied to clipboard

Provides override to RadioButton defaults while building content.

Link copied to clipboard
fun UiTreeBuilder.ProvideRemoteImageLoader(loader: RemoteImageLoader?, content: UiTreeBuilder.() -> Unit)

Provides loader to image components built inside content.

Link copied to clipboard

Provides registry to saveable-state APIs while content is built.

Link copied to clipboard

Provides override to SegmentedControl defaults while building content.

Link copied to clipboard

Provides override to Slider defaults while building content.

Link copied to clipboard

Provides override to Switch defaults while building content.

Link copied to clipboard

Provides override to TextField defaults while building content.

Link copied to clipboard
fun UiTreeBuilder.PullToRefresh(isRefreshing: Boolean, onRefresh: () -> Unit, indicatorColor: Int = PullToRefreshDefaults.indicatorColor(), key: Any? = null, modifier: Modifier = Modifier, content: ScrollableScope.() -> Unit)

Emits a pull-to-refresh container whose content is limited to ScrollableScope.

Link copied to clipboard
fun UiTreeBuilder.RadioButton(text: String, checked: Boolean, onCheckedChange: (Boolean) -> Unit, enabled: Boolean = true, checkedColor: Int = InputControlDefaults.radioButtonCheckedColor(enabled), uncheckedColor: Int = InputControlDefaults.radioButtonUncheckedColor(enabled), style: UiTextStyle = InputControlDefaults.labelStyle(), key: Any? = null, modifier: Modifier = Modifier)

Emits a radio button node for mutually exclusive selection flows.

Link copied to clipboard
fun RecomposeBoundary(key: Any? = null, inputs: List<Any?> = emptyList(), content: UiTreeBuilder.() -> Unit)

Creates an explicit restart boundary without emitting an Android View.

Link copied to clipboard
fun UiTreeBuilder.RichText(document: TextDocument, style: UiTextStyle = TextDefaults.currentStyle(), color: Int = TextDefaults.primaryColor(), maxLines: Int = Int.MAX_VALUE, overflow: TextOverflow = TextOverflow.Clip, textAlign: TextAlign = TextAlign.Start, textDecoration: TextDecoration = style.textDecoration ?: TextDecoration.None, key: Any? = null, modifier: Modifier = Modifier)

Emits a rich text node while preserving TextDocument span/paragraph data.

Link copied to clipboard
fun UiTreeBuilder.Row(key: Any? = null, spacing: UiDp = UiDp.Zero, arrangement: MainAxisArrangement = MainAxisArrangement.Start, verticalAlignment: VerticalAlignment = VerticalAlignment.Top, modifier: Modifier = Modifier, content: RowScope.() -> Unit)

Emits a horizontal linear layout node.

Link copied to clipboard
fun UiTreeBuilder.Scaffold(topBar: UiTreeBuilder.() -> Unit? = null, bottomBar: UiTreeBuilder.() -> Unit? = null, floatingActionButton: UiTreeBuilder.() -> Unit? = null, containerColor: Int = ScaffoldDefaults.containerColor(), contentColor: Int = ScaffoldDefaults.contentColor(), key: Any? = null, modifier: Modifier = Modifier, content: BoxScope.() -> Unit)

Page scaffold composite that arranges top/content/fab/bottom regions.

Link copied to clipboard
fun UiTreeBuilder.ScrollableColumn(key: Any? = null, spacing: UiDp = UiDp.Zero, arrangement: MainAxisArrangement = MainAxisArrangement.Start, horizontalAlignment: HorizontalAlignment = HorizontalAlignment.Start, focusFollowKeyboard: Boolean = false, modifier: Modifier = Modifier, content: ColumnScope.() -> Unit)

Emits a vertically scrollable Column node.

Link copied to clipboard
fun UiTreeBuilder.ScrollableRow(key: Any? = null, spacing: UiDp = UiDp.Zero, arrangement: MainAxisArrangement = MainAxisArrangement.Start, verticalAlignment: VerticalAlignment = VerticalAlignment.Top, modifier: Modifier = Modifier, content: RowScope.() -> Unit)

Emits a horizontally scrollable Row node.

Link copied to clipboard
fun UiTreeBuilder.SearchBar(state: TextFieldState, onSearch: (String) -> Unit? = null, placeholder: String = "", leadingIcon: ImageSource? = null, trailingIcon: UiTreeBuilder.() -> Unit? = null, enabled: Boolean = true, key: Any? = null, modifier: Modifier = Modifier)

Emits a search bar composite widget.

Link copied to clipboard
fun UiTreeBuilder.SegmentedControl(items: List<String>, selectedIndex: Int, onSelectionChange: (Int) -> Unit, size: SegmentedControlSize = SegmentedControlSize.Medium, enabled: Boolean = true, key: Any? = null, modifier: Modifier = Modifier)

Emits a SegmentedControl node.

Link copied to clipboard
fun UiTreeBuilder.Slider(value: Int, onValueChange: (Int) -> Unit, min: Int = 0, max: Int = 100, enabled: Boolean = true, thumbColor: Int = InputControlDefaults.sliderThumbColor(enabled), trackColor: Int = InputControlDefaults.sliderTrackColor(enabled), key: Any? = null, modifier: Modifier = Modifier)

Emits an integer-valued slider node.

Link copied to clipboard
fun UiTreeBuilder.Snackbar(visible: Boolean, message: String, actionLabel: String? = null, duration: SnackbarDuration = SnackbarDuration.Short, queuePolicy: TransientFeedbackQueuePolicy = TransientFeedbackQueuePolicy.Enqueue, requestKey: String = "snackbar", onAction: () -> Unit? = null, onDismiss: (TransientFeedbackDismissReason) -> Unit? = null)

Requests a snackbar transient feedback overlay.

Link copied to clipboard
fun UiTreeBuilder.Spacer(key: Any? = null, modifier: Modifier = Modifier)

Emits an empty spacer node whose size is usually controlled by Modifier.

Link copied to clipboard
fun UiTreeBuilder.Surface(key: Any? = null, variant: SurfaceVariant = SurfaceVariant.Default, enabled: Boolean = true, contentAlignment: BoxAlignment = BoxAlignment.TopStart, contentColor: Int = SurfaceDefaults.contentColor(variant), onClick: () -> Unit? = null, modifier: Modifier = Modifier, content: BoxScope.() -> Unit)

Emits a Surface container and provides a default content color within its content scope.

Link copied to clipboard
fun UiTreeBuilder.Switch(text: String, checked: Boolean, onCheckedChange: (Boolean) -> Unit, enabled: Boolean = true, thumbColor: Int? = null, trackColor: Int? = null, style: UiTextStyle = InputControlDefaults.labelStyle(), key: Any? = null, modifier: Modifier = Modifier)

Emits a switch node with a text label.

Link copied to clipboard
fun UiTreeBuilder.TabRow(selectedIndex: Int, onTabSelected: (Int) -> Unit, pagerState: PagerState? = null, indicatorColor: Int = TabRowDefaults.indicatorColor(), indicatorHeight: UiDp = TabRowDefaults.indicatorHeight(), indicatorCornerRadius: UiDp = TabRowDefaults.indicatorCornerRadius(), indicatorPosition: TabIndicatorPosition = TabIndicatorPosition.Bottom, indicatorWidthMode: TabIndicatorWidthMode = TabIndicatorWidthMode.MatchItem, indicatorFixedWidth: UiDp = UiDp.Zero, containerColor: Int = TabRowDefaults.containerColor(), scrollable: Boolean = false, equalWidth: Boolean = true, rippleColor: Int = TabRowDefaults.rippleColor(), itemSpacing: UiDp = UiDp.Zero, itemPaddingHorizontal: UiDp = TabRowDefaults.itemPaddingHorizontal(), itemPaddingVertical: UiDp = TabRowDefaults.itemPaddingVertical(), minItemWidth: UiDp = TabRowDefaults.minItemWidth(), key: Any? = null, modifier: Modifier = Modifier, tabs: TabRowScope.() -> Unit)

Emits a TabRow and creates child sessions that update with selected state.

Link copied to clipboard
fun UiTreeBuilder.Text(text: String, style: UiTextStyle = TextDefaults.currentStyle(), color: Int = TextDefaults.primaryColor(), maxLines: Int = Int.MAX_VALUE, overflow: TextOverflow = TextOverflow.Clip, textAlign: TextAlign = TextAlign.Start, textDecoration: TextDecoration = style.textDecoration ?: TextDecoration.None, key: Any? = null, modifier: Modifier = Modifier)

Emits a plain text node.

Link copied to clipboard
fun UiTreeBuilder.TextArea(state: TextFieldState, hint: String = "", label: String = "", placeholder: String = hint, supportingText: String = "", variant: TextFieldVariant = TextFieldVariant.Filled, size: TextFieldSize = TextFieldSize.Medium, enabled: Boolean = true, isError: Boolean = false, readOnly: Boolean = false, minLines: Int = 3, maxLines: Int = Int.MAX_VALUE, keyboardOptions: TextFieldKeyboardOptions = TextFieldKeyboardOptions(), inputTransformation: InputTransformation? = null, receiveContent: ReceiveContentConfiguration = ReceiveContentConfiguration.Default, onKeyboardAction: (TextFieldImeAction) -> Boolean? = null, onFocusChange: (Boolean) -> Unit? = null, autofillHints: Set<TextFieldAutofillHint> = emptySet(), style: UiTextStyle = TextFieldDefaults.textStyle(size), key: Any? = null, modifier: Modifier = Modifier)

Emits a multi-line text input area.

Link copied to clipboard
fun UiTreeBuilder.TextButton(text: String, onClick: () -> Unit? = null, size: ButtonSize = ButtonSize.Medium, enabled: Boolean = true, style: UiTextStyle = ButtonDefaults.textStyle(size), key: Any? = null, modifier: Modifier = Modifier)

Text-style convenience variant of Button.

Link copied to clipboard
fun UiTreeBuilder.TextField(state: TextFieldState, hint: String = "", label: String = "", placeholder: String = hint, supportingText: String = "", singleLine: Boolean = true, readOnly: Boolean = false, maxLines: Int = if (singleLine) 1 else Int.MAX_VALUE, minLines: Int = if (singleLine) 1 else 3, keyboardOptions: TextFieldKeyboardOptions = TextFieldKeyboardOptions(), inputTransformation: InputTransformation? = null, receiveContent: ReceiveContentConfiguration = ReceiveContentConfiguration.Default, onKeyboardAction: (TextFieldImeAction) -> Boolean? = null, onFocusChange: (Boolean) -> Unit? = null, autofillHints: Set<TextFieldAutofillHint> = emptySet(), variant: TextFieldVariant = TextFieldVariant.Filled, size: TextFieldSize = TextFieldSize.Medium, enabled: Boolean = true, isError: Boolean = false, cursorColor: Int = TextFieldDefaults.cursorColor(), style: UiTextStyle = TextFieldDefaults.textStyle(size), key: Any? = null, modifier: Modifier = Modifier)

Emits a standard text field composite with label, placeholder, and supporting text.

Link copied to clipboard
fun UiTreeBuilder.Toast(visible: Boolean, message: String, duration: ToastDuration = ToastDuration.Short, queuePolicy: TransientFeedbackQueuePolicy = TransientFeedbackQueuePolicy.Enqueue, requestKey: String = "toast", onDismiss: (TransientFeedbackDismissReason) -> Unit? = null)

Requests a toast transient feedback overlay.

Link copied to clipboard
fun UiTreeBuilder.TopAppBar(title: String, navigationIcon: UiTreeBuilder.() -> Unit? = null, actions: RowScope.() -> Unit? = null, containerColor: Int = TopAppBarDefaults.containerColor(), titleColor: Int = TopAppBarDefaults.titleColor(), key: Any? = null, modifier: Modifier = Modifier)

Top app bar composite.

Link copied to clipboard
fun UiTreeBuilder.UiEnvironment(values: UiEnvironmentValues? = null, androidContext: Context? = null, content: UiTreeBuilder.() -> Unit)

Provides one environment snapshot while building content.

Link copied to clipboard
fun UiTreeBuilder.UiTheme(tokens: UiThemeTokens? = null, androidContext: Context? = null, resolvedAndroidTheme: AndroidResolvedTheme? = null, dynamicColorPolicy: AndroidDynamicColorPolicy = AndroidDynamicColorPolicy.UseIfAvailable, refreshController: AndroidThemeRefreshController? = null, content: UiTreeBuilder.() -> Unit)

Resolves and provides one theme snapshot while building content.

Link copied to clipboard
fun UiTreeBuilder.UiThemeOverride(colors: UiColors? = null, stateColors: UiStateColors? = null, typography: UiTypography? = null, shapes: UiShapes? = null, controls: UiControlSizing? = null, overlays: UiOverlays? = null, content: UiTreeBuilder.() -> Unit)

Provides selected token families over the current theme while building content.

fun UiTreeBuilder.UiThemeOverride(colors: UiColors.() -> UiColors? = null, stateColors: UiStateColors.() -> UiStateColors? = null, typography: UiTypography.() -> UiTypography? = null, shapes: UiShapes.() -> UiShapes? = null, controls: UiControlSizing.() -> UiControlSizing? = null, overlays: UiOverlays.() -> UiOverlays? = null, content: UiTreeBuilder.() -> Unit)

Computes and provides selected token families from their current values.

Link copied to clipboard
fun UiTreeBuilder.VerticalPager(currentPage: Int, onPageChanged: (Int) -> Unit, pagerState: PagerState? = null, offscreenPageLimit: Int = 1, userScrollEnabled: Boolean = true, reusePolicy: CollectionReusePolicy = CollectionReusePolicy(), motionPolicy: CollectionMotionPolicy = CollectionMotionPolicy(), focusFollowKeyboard: Boolean = false, key: Any? = null, modifier: Modifier = Modifier, pages: HorizontalPagerScope.() -> Unit)

Emits a VerticalPager and creates an independent lazy item session for each page.