mirror of
https://github.com/zapstore/zapstore.git
synced 2026-10-06 04:58:23 +00:00
Fix swiping back
This commit is contained in:
@@ -1,4 +1,5 @@
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_hooks/flutter_hooks.dart';
|
||||
import 'package:go_router/go_router.dart';
|
||||
import 'package:hooks_riverpod/hooks_riverpod.dart';
|
||||
import 'package:models/models.dart';
|
||||
@@ -7,7 +8,7 @@ import '../widgets/common/profile_avatar.dart';
|
||||
import '../theme.dart';
|
||||
|
||||
/// Main scaffold with bottom navigation that adapts to screen size
|
||||
class MainScaffold extends StatelessWidget {
|
||||
class MainScaffold extends HookWidget {
|
||||
const MainScaffold({super.key, required this.navigationShell});
|
||||
|
||||
final StatefulNavigationShell navigationShell;
|
||||
@@ -34,6 +35,9 @@ class MainScaffold extends StatelessWidget {
|
||||
Widget build(BuildContext context) {
|
||||
final router = GoRouter.of(context);
|
||||
|
||||
// Listen to router changes to keep canPop in sync with navigation state
|
||||
useListenable(router.routerDelegate);
|
||||
|
||||
return PopScope(
|
||||
canPop: !router.canPop(), // Allow app to close only when router can't pop
|
||||
onPopInvokedWithResult: (didPop, result) {
|
||||
|
||||
Reference in New Issue
Block a user