ShaderPageRoute<T> constructor
Implementation
ShaderPageRoute({
required Widget page,
this.transition = const DiamondTransition(),
VoidCallback? onStart,
VoidCallback? onComplete,
ValueChanged<double>? onProgress,
this.swipeBack,
super.settings,
}) : super(
// CRITICAL: keep the outgoing route rendered underneath.
opaque: false,
barrierColor: null,
pageBuilder: (_, __, ___) => page,
// One duration for both directions; any cover hold lives inside
// this window (clamped by ShaderMaskTransition).
transitionDuration: transition.duration,
reverseTransitionDuration: transition.duration,
transitionsBuilder: ShaderTransitionBuilders.create(
transition,
onStart: onStart,
onComplete: onComplete,
onProgress: onProgress,
),
);