Skip to content

Commit b44dd2a

Browse files
author
Jens Becker
committed
Improve navigation helpers
1 parent 9f21e7e commit b44dd2a

File tree

1 file changed

+8
-8
lines changed

1 file changed

+8
-8
lines changed

lib/src/extensions/build_context/navigation_helpers.dart

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -2,31 +2,31 @@ import 'package:flutter/material.dart';
22

33
extension NavigationHelpers on BuildContext {
44
/// Push the given page onto the navigator.
5-
void pushPage(
5+
Future<void> pushPage<T extends Object?>(
66
Widget page, {
77
bool dismissKeyboard = true,
88
bool avoidDuplicatePage = true,
9-
}) {
10-
pushRoute(
11-
MaterialPageRoute<Widget>(builder: (context) => page),
9+
}) async {
10+
await pushRoute<T>(
11+
MaterialPageRoute<T>(builder: (context) => page),
1212
dismissKeyboard: dismissKeyboard,
1313
avoidDuplicateRoute: avoidDuplicatePage,
1414
);
1515
}
1616

1717
/// Push the given route onto the navigator.
18-
void pushRoute(
19-
Route route, {
18+
Future<void> pushRoute<T extends Object?>(
19+
Route<T> route, {
2020
bool dismissKeyboard = true,
2121
bool avoidDuplicateRoute = true,
22-
}) {
22+
}) async {
2323
if (dismissKeyboard) this.dismissKeyboard();
2424

2525
if (avoidDuplicateRoute && route.isCurrent) {
2626
debugPrint(
2727
'INFO: New route is not pushed because it is already the current route!');
2828
} else {
29-
Navigator.of(this).push<void>(route);
29+
await Navigator.of(this).push<T>(route);
3030
}
3131
}
3232

0 commit comments

Comments
 (0)