computeState method
Computes the current LiquidMorphState for the given layout geometry.
Call this once per frame from your AnimatedBuilder or addListener callback to get pre-calculated render values.
finalDx/finalDy— target displacement from trigger center to menu center, in logical pixels.horizontalOffset/verticalOffset— screen-edge clamping corrections from the menu positioning logic.scaleDelta— geometric scale ratio (see LiquidMorphPhysics.computeScaleDelta). Values > 1.5 engage adaptive damping. Defaults to1.0(unchanged baseline behaviour) for backward compatibility.adaptiveDamping— explicit override; whennull(default), inferred fromscaleDelta.isClosing— explicit override; whennull(default), inferred from this controller's own_isClosingstate.
Implementation
LiquidMorphState computeState({
required double finalDx,
required double finalDy,
double horizontalOffset = 0.0,
double verticalOffset = 0.0,
double scaleDelta = 1.0,
bool? adaptiveDamping,
bool? isClosing,
}) {
return LiquidMorphPhysics.compute(
rawValue: _animationController.value,
finalDx: finalDx,
finalDy: finalDy,
horizontalOffset: horizontalOffset,
verticalOffset: verticalOffset,
scaleDelta: scaleDelta,
adaptiveDamping: adaptiveDamping,
isClosing: isClosing ?? _isClosing,
);
}