Package-level declarations

Types

Link copied to clipboard

Circuit adapts presenter factories to their corresponding ui factories using screens. Create instances using the Builder and create new CircuitContent with it to run presenter/UI pairings.

Link copied to clipboard
interface EventListener

A listener for tracking the state changes of a given Screen. This can be used for instrumentation and other telemetry.

Link copied to clipboard

A sealed navigation interface intended to be used when making a navigation callback.

Link copied to clipboard

Default values and common alternatives used by navigable composables.

Link copied to clipboard

A simple holder class for a record and its associated content.

Properties

Link copied to clipboard

The Circuit used in this context.

Link copied to clipboard

CompositionLocal with a current Circuit instance.

Functions

Link copied to clipboard

Provides the given circuit as a CompositionLocal to all composables within content. Also adds any other composition locals that Circuit needs.

Link copied to clipboard
fun CircuitContent(screen: Screen, modifier: Modifier = Modifier, circuit: Circuit = requireNotNull(LocalCircuit.current), unavailableContent: @Composable (screen: Screen, modifier: Modifier) -> Unit = circuit.onUnavailableContent)
fun CircuitContent(screen: Screen, modifier: Modifier = Modifier, onNavEvent: (event: NavEvent) -> Unit, circuit: Circuit = requireNotNull(LocalCircuit.current), unavailableContent: @Composable (screen: Screen, modifier: Modifier) -> Unit = circuit.onUnavailableContent)
fun CircuitContent(screen: Screen, navigator: Navigator, modifier: Modifier = Modifier, circuit: Circuit = requireNotNull(LocalCircuit.current), unavailableContent: @Composable (screen: Screen, modifier: Modifier) -> Unit = circuit.onUnavailableContent)
Link copied to clipboard
fun NavigableCircuitContent(navigator: Navigator, backstack: BackStack<out BackStack.Record>, modifier: Modifier = Modifier, circuit: Circuit = requireNotNull(LocalCircuit.current), providedValues: ImmutableMap<out BackStack.Record, ProvidedValues> = providedValuesForBackStack(backstack), decoration: NavDecoration = circuit.defaultNavDecoration, unavailableRoute: @Composable (screen: Screen, modifier: Modifier) -> Unit = circuit.onUnavailableContent)
Link copied to clipboard

A Circuit call back to help navigate to different screens. Intended to be used when forwarding NavEvents from nested Presenters.

Link copied to clipboard
fun rememberCircuitNavigator(backstack: BackStack<out BackStack.Record>, enableBackHandler: Boolean = true): Navigator

Returns a new Navigator for navigating within CircuitContents. Delegates onRootPop to the LocalOnBackPressedDispatcherOwner.

Returns a new Navigator for navigating within CircuitContents.