mirror of
https://gitlab.com/veilid/veilidchat.git
synced 2025-04-18 22:46:03 -04:00
fix popcontrol for android
This commit is contained in:
parent
b835e10200
commit
2313247407
@ -2,13 +2,15 @@ import 'package:flutter/widgets.dart';
|
||||
|
||||
import '../../keyboard_shortcuts.dart';
|
||||
import '../../notifications/notifications.dart';
|
||||
import '../../theme/theme.dart';
|
||||
|
||||
class RouterShell extends StatelessWidget {
|
||||
const RouterShell({required Widget child, super.key}) : _child = child;
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) =>
|
||||
NotificationsWidget(child: KeyboardShortcuts(child: _child));
|
||||
Widget build(BuildContext context) => PopControl(
|
||||
dismissible: false,
|
||||
child: NotificationsWidget(child: KeyboardShortcuts(child: _child)));
|
||||
|
||||
final Widget _child;
|
||||
}
|
||||
|
@ -8,18 +8,15 @@ class PopControl extends StatelessWidget {
|
||||
super.key,
|
||||
});
|
||||
|
||||
void _doDismiss(NavigatorState navigator) {
|
||||
void _doDismiss(BuildContext context) {
|
||||
if (!dismissible) {
|
||||
return;
|
||||
}
|
||||
navigator.pop();
|
||||
Navigator.of(context).pop();
|
||||
}
|
||||
|
||||
@override
|
||||
// ignore: prefer_expression_function_bodies
|
||||
Widget build(BuildContext context) {
|
||||
final navigator = Navigator.of(context);
|
||||
|
||||
final route = ModalRoute.of(context);
|
||||
if (route != null && route is PopControlDialogRoute) {
|
||||
WidgetsBinding.instance.addPostFrameCallback((_) {
|
||||
@ -33,7 +30,7 @@ class PopControl extends StatelessWidget {
|
||||
if (didPop) {
|
||||
return;
|
||||
}
|
||||
_doDismiss(navigator);
|
||||
_doDismiss(context);
|
||||
return;
|
||||
},
|
||||
child: child);
|
||||
|
Loading…
x
Reference in New Issue
Block a user