BackStack

interface BackStack<R : BackStack.Record> : NavStack<R> , Iterable<R> (source)

A caller-supplied stack of Records for presentation with a Navigator. Iteration order is top-first (first element is the top of the stack).

BackStack extends NavStack but is intended for push or pop only navigation patterns. Implementations may provide no-op implementations for forward navigation methods.

Inheritors

Types

Link copied to clipboard
interface Record : NavStack.Record

Properties

Link copied to clipboard
open override val currentRecord: R?
Link copied to clipboard

true if the BackStack contains exactly one record.

Link copied to clipboard

true if the BackStack contains no records. Iterable.firstOrNull will return null.

Link copied to clipboard
abstract val rootRecord: R?
Link copied to clipboard
abstract val size: Int
Link copied to clipboard
abstract val topRecord: R?

Functions

Link copied to clipboard
open override fun backward(): Boolean

Backward navigation is not supported by the BackStack as you are unable to go forward again.

Link copied to clipboard

Clear any saved state from the BackStack.

Link copied to clipboard
abstract fun containsRecord(record: R, includeSaved: Boolean): Boolean
Link copied to clipboard
open override fun forward(): Boolean

Forward navigation is not supported by the BackStack.

Link copied to clipboard
abstract fun isRecordReachable(key: String, depth: Int, includeSaved: Boolean): Boolean
Link copied to clipboard
abstract operator fun iterator(): Iterator<R>
Link copied to clipboard
abstract fun peekState(): List<Screen>
Link copied to clipboard
abstract fun pop(): R?
Link copied to clipboard
open fun popUntil(predicate: (R) -> Boolean): List<R>
Link copied to clipboard
abstract fun push(record: R): Boolean
abstract fun push(screen: Screen): Boolean
Link copied to clipboard
abstract fun removeState(screen: Screen): Boolean
Link copied to clipboard
abstract fun restoreState(screen: Screen): Boolean
Link copied to clipboard
abstract fun saveState()
Link copied to clipboard
open override fun snapshot(): NavStackList<R>?