route static method
RouteTransitionFactory
route({
- required CrossTransition background,
- required CrossTransition foreground,
- bool reverse = false,
Implementation
static RouteTransitionFactory route(
{required CrossTransition background,
required CrossTransition foreground,
bool reverse = false}) =>
(context, setup, child) {
if (setup.backgroundActive && setup.foregroundActive) {
return child;
}
if (setup.backgroundActive) {
if (setup.backgroundIncoming) {
return background.transitionIn
.call(child, ReverseAnimation(setup.outgoingAnimation));
}
if (setup.backgroundOutgoing) {
return background.transitionOut
.call(child, ReverseAnimation(setup.outgoingAnimation));
}
}
if (setup.foregroundActive) {
if (setup.foregroundIncoming) {
return foreground.transitionIn.call(child, setup.incomingAnimation);
}
if (setup.foregroundOutgoing) {
return foreground.transitionOut
.call(child, setup.incomingAnimation);
}
}
return child;
};