Compose Unstyled 2.0 is out! Check the official announcement blog ->
Composable Function

SelectionContainer

Enables text selection for its direct or indirect children.

SelectionContainer

Source set: Common
@Composable
fun SelectionContainer(modifier: Modifier = Modifier, content: @Composable () -> Unit)

Enables text selection for its direct or indirect children.

Use of a lazy layout, such as LazyRow or LazyColumn, within a SelectionContainer has undefined behavior on text items that aren't composed. For example, texts that aren't composed will not be included in copy operations and select all will not expand the selection to include them. However, selected lazy layout items will be pinned so that they don't leave composition when scrolled off-screen.

Parameters

modifier Modifier for SelectionContainer.
content The content to be selectable.

SelectionContainer

Source set: Common
@Composable
fun SelectionContainer(
    state: SelectionState,
    modifier: Modifier = Modifier,
    content: @Composable () -> Unit,
)

Enables text selection for its direct or indirect children. Allows passing in a SelectionState to observe currently selected text or perform selection actions such as selectAll or clear.

Use of a lazy layout, such as LazyRow or LazyColumn, within a SelectionContainer has undefined behavior on text items that aren't composed. For example, texts that aren't composed will not be included in copy operations and select all will not expand the selection to include them. However, selected lazy layout items will be pinned so that they don't disappear when scrolled off-screen.

Parameters

state SelectionState object containing the currently selected text and selection actions. It is invalid for the same SelectionState to be passed to multiple SelectionContainers.
modifier Modifier for SelectionContainer.
content The content to be selectable.

Last updated: