builder<T> static method
Implementation
static Route<T> builder<T>(
BuildContext context,
Widget child,
AutoRoutePage<T> page,
) => PageRouteBuilder<T>(
opaque: false,
barrierDismissible: true,
barrierColor: Colors.transparent,
fullscreenDialog: page.fullscreenDialog,
settings: page,
transitionDuration: const Duration(milliseconds: 150),
reverseTransitionDuration: const Duration(milliseconds: 150),
pageBuilder: (_, _, _) => Builder(
builder: (context) {
final mediaQuery = context.mediaQuery;
return CustomSingleChildLayout(
delegate: _FollowerDialogRouteLayout(
followerAnchor: DropDialogArguments.followerAlignment,
position: DropDialogArguments.position,
textDirection: Directionality.of(context),
topPadding: mediaQuery.padding.top,
bottomPadding: mediaQuery.padding.bottom,
offset: DropDialogArguments.offset,
avoidOverflow: true,
),
child: child,
);
},
),
transitionsBuilder: (context, animation, secondaryAnimation, child) {
final curved = CurvedAnimation(
parent: animation,
curve: Curves.easeOut,
);
return FadeTransition(
opacity: curved,
child: SlideTransition(
position: Tween<Offset>(
begin: const Offset(0, 0.01),
end: Offset.zero,
).animate(curved),
child: child,
),
);
},
);