tecban_mobile/lib/src/app/base/screens/navigator.dart

38 lines
960 B
Dart
Raw Normal View History

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<NavigatorScreen> with WidgetsBindingObserver{
final GlobalKey<ScaffoldState> scaffoldKey = GlobalKey<ScaffoldState>();
@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,
),
)
);
}
}