Known direct subclasses
ExtendedPaneScaffoldScope

Extended scope for pane scaffolds.

Known indirect subclasses
ExtendedPaneScaffoldPaneScope

Extended scope for the panes of pane scaffolds.

ThreePaneScaffoldPaneScope

Scope for the panes of ThreePaneScaffold.

ThreePaneScaffoldScope

Scope for the panes of ThreePaneScaffold.


Scope for performing pane motions within a pane scaffold. It provides the spec and necessary info to decide a pane's EnterTransition and ExitTransition, as well as how bounds morphing will be performed.

Summary

Public properties

FiniteAnimationSpec<IntOffset>

The delayed position animation spec of the associated pane to the scope.

Cmn
List<PaneMotionData>

PaneMotionData of all panes in the scaffold corresponding to the scaffold's current state transition and motion settings, listed in panes' horizontal order.

Cmn
FiniteAnimationSpec<IntOffset>

The position animation spec of the associated pane to the scope.

Cmn
IntSize

The scaffold's current size.

Cmn
FiniteAnimationSpec<IntSize>

The size animation spec of the associated pane to the scope.

Cmn

Public properties

delayedPositionAnimationSpec

val delayedPositionAnimationSpecFiniteAnimationSpec<IntOffset>

The delayed position animation spec of the associated pane to the scope. AnimatedPane will use this value to perform pane position animations during scaffold state changes when an animation needs to be played with a delay.

paneMotionDataList

val paneMotionDataListList<PaneMotionData>

PaneMotionData of all panes in the scaffold corresponding to the scaffold's current state transition and motion settings, listed in panes' horizontal order.

The size of position values of PaneMotionData in the list will only be update during measurement of the scaffold and before the first measurement their values will be IntSize.Zero or IntOffset.Zero.

Note that the aforementioned fields are not backed by snapshot states so they are supposed to be only read proactively by the motion logic "on-the-fly" when the scaffold motion is happening.

positionAnimationSpec

val positionAnimationSpecFiniteAnimationSpec<IntOffset>

The position animation spec of the associated pane to the scope. AnimatedPane will use this value to perform pane animations during scaffold state changes.

scaffoldSize

val scaffoldSizeIntSize

The scaffold's current size. Note that the value of the field will only be updated during measurement of the scaffold and before the first measurement the value will be IntSize.Zero.

Note that this field is not backed by snapshot states so it's supposed to be only read proactively by the motion logic "on-the-fly" when the scaffold motion is happening.

sizeAnimationSpec

val sizeAnimationSpecFiniteAnimationSpec<IntSize>

The size animation spec of the associated pane to the scope. AnimatedPane will use this value to perform pane animations during scaffold state changes.