import 'dart:async'; import 'package:flutter/material.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:go_router/go_router.dart'; class NavigatorScreen extends ConsumerStatefulWidget { final Widget? child; const NavigatorScreen({Key? key, this.child}) : super(key: key); @override _NavigatorScreenState createState() => _NavigatorScreenState(); } class _NavigatorScreenState extends ConsumerState with WidgetsBindingObserver{ final GlobalKey scaffoldKey = GlobalKey(); @override void dispose() { super.dispose(); WidgetsBinding.instance.removeObserver(this); } @override Widget build(BuildContext context) { return WillPopScope( onWillPop: () async { return Future.value(false); }, child: ProviderScope( child: Scaffold( key: scaffoldKey, body: widget.child, ), ) ); } }