navigateAndRestore method
Pushes screen and runs onBack once it pops.
Implementation
Future<void> navigateAndRestore({
required Widget screen,
void Function()? onBack,
bool fade = false,
}) =>
Navigator.of(this)
.push(fade
? _fadeTransition<void>(screen)
: MaterialPageRoute(builder: (_) => screen))
.then((_) => onBack?.call());