Line data Source code
1 : import 'package:flutter/material.dart';
2 : import 'package:nav/nav.dart';
3 : import 'package:nav/route/custom_page_route_builder.dart';
4 :
5 : class FadeRoute<T> extends CustomPageRouteBuilder<T> {
6 : final Widget widget;
7 :
8 1 : FadeRoute(this.widget, {int durationMs = Nav.defaultDurationMs})
9 1 : : super(
10 1 : pageBuilder: (BuildContext context, Animation<double> animation,
11 : Animation<double> secondaryAnimation) {
12 : return widget;
13 : },
14 1 : transitionDuration: Duration(milliseconds: durationMs),
15 1 : transitionsBuilder: (BuildContext context,
16 : Animation<double> animation,
17 : Animation<double> secondaryAnimation,
18 : Widget child) {
19 1 : return FadeTransition(
20 2 : opacity: Tween<double>(begin: 0.0, end: 1.0).animate(animation),
21 : child: child,
22 : );
23 : });
24 : }
|