Package-level declarations

JengaSearchField and JengaSearchTrigger, which opens a search screen.

Types

Link copied to clipboard
class JengaSearchFieldStyle(val shape: Shape? = null, val minHeight: Dp? = null, val contentPadding: PaddingValues? = null, val textStyle: TextStyle? = null, val colors: JengaTextFieldColors? = null)

Theme-wide style for every JengaSearchField or every JengaSearchTrigger, set through io.github.joelkanyi.jenga.theme.JengaComponentStyles.searchField and io.github.joelkanyi.jenga.theme.JengaComponentStyles.searchTrigger. A null value falls back to the theme's text field style, then to Jenga's default; arguments passed to a call still win.

Functions

Link copied to clipboard
fun JengaSearchField(value: String, onValueChange: (String) -> Unit, placeholder: String, clearContentDescription: String, modifier: Modifier = Modifier, enabled: Boolean = true, onClear: () -> Unit? = null, trailingContent: @Composable () -> Unit? = null, supportingContent: @Composable () -> Unit? = null, shape: Shape = JengaTheme.components.searchField?.shape ?: JengaSearchFieldDefaults.shape, colors: JengaTextFieldColors = JengaTheme.components.searchField?.colors ?: JengaTextFieldDefaults.colors(), textStyle: TextStyle = JengaTheme.components.searchField?.textStyle ?: JengaTextFieldDefaults.textStyle, minHeight: Dp = JengaTheme.components.searchField?.minHeight ?: JengaTextFieldDefaults.minHeight, contentPadding: PaddingValues = JengaTheme.components.searchField?.contentPadding ?: JengaTextFieldDefaults.contentPadding, keyboardOptions: KeyboardOptions = KeyboardOptions.Default, keyboardActions: KeyboardActions = KeyboardActions.Default)

A search input: a JengaTextField with a leading search icon and a clear button that appears once there's text. While the query is empty, the trailingContent slot (e.g. a scan button) takes the clear button's place.

Link copied to clipboard
fun JengaSearchTrigger(placeholder: String, onClick: () -> Unit, modifier: Modifier = Modifier, trailingContent: @Composable () -> Unit? = null, shape: Shape = JengaTheme.components.searchTrigger?.shape ?: JengaSearchFieldDefaults.shape, colors: JengaTextFieldColors = JengaTheme.components.searchTrigger?.colors ?: JengaTextFieldDefaults.colors(), textStyle: TextStyle = JengaTheme.components.searchTrigger?.textStyle ?: JengaTextFieldDefaults.textStyle, minHeight: Dp = JengaTheme.components.searchTrigger?.minHeight ?: JengaTextFieldDefaults.minHeight, contentPadding: PaddingValues = JengaTheme.components.searchTrigger?.contentPadding ?: JengaTextFieldDefaults.contentPadding)

A button that looks like a JengaSearchField, for entry points that open a search screen or mode instead of taking text in place. The trailingContent slot (e.g. a scan button) handles its own clicks.