pushWidgetAwait function

Future pushWidgetAwait({
  1. required Widget newPage,
  2. required BuildContext context,
  3. bool pushBackPrevPage = false,
})

Push a widget and await for data returned from Navigator.pop()

Implementation

Future<dynamic> pushWidgetAwait(
    {required Widget newPage,
    required BuildContext context,
    bool pushBackPrevPage = false}) async {
  if (pushBackPrevPage) {
    Navigator.of(context).pop();
  }
  return Future.value(await Navigator.of(context)
      .push(MaterialPageRoute(builder: (context) => newPage)));
}