import 'package:flutter/material.dart'; class FadePageTransitionsBuilder extends PageTransitionsBuilder { const FadePageTransitionsBuilder(); @override Widget buildTransitions( PageRoute? route, BuildContext? context, Animation animation, Animation secondaryAnimation, Widget child, ) { return _FadePagePageTransition( animation: animation, secondaryAnimation: secondaryAnimation, child: child, ); } } class _FadePagePageTransition extends StatelessWidget { const _FadePagePageTransition({ required this.animation, required this.secondaryAnimation, required this.child, }); final Animation animation; final Animation secondaryAnimation; final Widget child; @override Widget build(BuildContext context) { var curveTween = CurveTween(curve: Curves.easeIn); return FadeTransition( opacity: animation.drive(curveTween), child: child, ); } }