FurryChat/lib/utils/app_route.dart

36 lines
991 B
Dart

import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import '../components/adaptive_page_layout.dart';
class AppRoute extends PageRouteBuilder {
static Route defaultRoute(BuildContext context, Widget page) {
return context != null && !AdaptivePageLayout.columnMode(context)
? CupertinoPageRoute(
builder: (BuildContext context) => page,
)
: AppRoute(page);
}
final Widget page;
AppRoute(this.page)
: super(
pageBuilder: (
BuildContext context,
Animation<double> animation,
Animation<double> secondaryAnimation,
) =>
page,
transitionsBuilder: (
BuildContext context,
Animation<double> animation,
Animation<double> secondaryAnimation,
Widget child,
) =>
FadeTransition(
opacity: animation,
child: child,
),
);
}