Browse Source

fix: my posscope

pull/62/head
AmirrezaChegini 5 days ago
parent
commit
5aeda5a34a
  1. 13
      lib/core/widgets/dialog/exit_dialog.dart
  2. 5
      lib/core/widgets/pop_scope/my_pop_scope.dart
  3. 1
      lib/features/guider/presentation/ui/guider_page.dart
  4. 1
      lib/features/level/presentation/ui/level_page.dart

13
lib/core/widgets/dialog/exit_dialog.dart

@ -6,22 +6,25 @@ import 'package:go_router/go_router.dart';
import 'package:hadi_hoda_flutter/common_ui/resources/my_colors.dart';
import 'package:hadi_hoda_flutter/common_ui/resources/my_spaces.dart';
import 'package:hadi_hoda_flutter/common_ui/resources/my_text_style.dart';
import 'package:hadi_hoda_flutter/core/routers/my_routes.dart';
import 'package:hadi_hoda_flutter/core/utils/my_localization.dart';
import 'package:hadi_hoda_flutter/core/utils/set_platform_size.dart';
import 'package:hadi_hoda_flutter/core/widgets/dialog/styles/dialog_background.dart';
import 'package:hadi_hoda_flutter/core/widgets/dialog/styles/dialog_button.dart';
Future<void> showExitDialog({required BuildContext context}) async {
Future<void> showExitDialog({required BuildContext context, bool? backHome}) async {
await showDialog(
context: context,
builder: (context) => const ExitDialog(),
builder: (context) => ExitDialog(backHome: backHome),
barrierColor: MyColors.purple.withValues(alpha: 0.82),
useSafeArea: false,
);
}
class ExitDialog extends StatelessWidget {
const ExitDialog({super.key});
const ExitDialog({super.key, this.backHome});
final bool? backHome;
@override
Widget build(BuildContext context) {
@ -74,7 +77,11 @@ class ExitDialog extends StatelessWidget {
Expanded(
child: DialogButton(
onTap: () {
if(backHome ?? false){
context.goNamed(Routes.homePage);
} else {
SystemNavigator.pop();
}
},
height: 72,
color: const Color(0XFFD42427),

5
lib/core/widgets/pop_scope/my_pop_scope.dart

@ -2,16 +2,17 @@ import 'package:flutter/material.dart';
import 'package:hadi_hoda_flutter/core/widgets/dialog/exit_dialog.dart';
class MyPopScope extends StatelessWidget {
const MyPopScope({super.key, required this.child});
const MyPopScope({super.key, required this.child, this.backHome});
final Widget child;
final bool? backHome;
void onPopInvokedWithResult(
bool didPop,
dynamic result,
BuildContext context,
) {
showExitDialog(context: context);
showExitDialog(context: context, backHome: backHome);
}
@override

1
lib/features/guider/presentation/ui/guider_page.dart

@ -49,6 +49,7 @@ class _GuiderPageState extends State<GuiderPage> with TickerProviderStateMixin {
Widget build(BuildContext context) {
return Scaffold(
body: MyPopScope(
backHome: true,
child: Directionality(
textDirection: TextDirection.ltr,
child: Container(

1
lib/features/level/presentation/ui/level_page.dart

@ -28,6 +28,7 @@ class LevelPage extends StatelessWidget {
Widget build(BuildContext context) {
return Scaffold(
body: MyPopScope(
backHome: true,
child: Stack(
alignment: Alignment.center,
children: [

Loading…
Cancel
Save