ソースを参照

Null safety: Migrated dialog_util.dart to null safety

ashilkn 2 年 前
コミット
59625cba8c
1 ファイル変更11 行追加10 行削除
  1. 11 10
      lib/utils/dialog_util.dart

+ 11 - 10
lib/utils/dialog_util.dart

@@ -1,5 +1,3 @@
-// @dart=2.9
-
 import 'dart:math';
 
 import 'package:confetti/confetti.dart';
@@ -7,6 +5,7 @@ import 'package:flutter/material.dart';
 import 'package:photos/core/constants.dart';
 import 'package:photos/ui/common/loading_widget.dart';
 import 'package:photos/ui/common/progress_dialog.dart';
+import 'package:photos/ui/components/button_widget.dart';
 import 'package:photos/ui/components/dialog_widget.dart';
 
 typedef DialogBuilder = DialogWidget Function(BuildContext context);
@@ -34,21 +33,23 @@ ProgressDialog createProgressDialog(
   return dialog;
 }
 
-Future<T> showConfettiDialog<T>({
-  @required BuildContext context,
-  DialogBuilder dialogBuilder,
+Future<ButtonAction?> showConfettiDialog<T>({
+  required BuildContext context,
+  DialogBuilder? dialogBuilder,
   bool barrierDismissible = true,
-  Color barrierColor,
+  Color? barrierColor,
   bool useSafeArea = true,
   bool useRootNavigator = true,
-  RouteSettings routeSettings,
+  RouteSettings? routeSettings,
   Alignment confettiAlignment = Alignment.center,
 }) {
   final widthOfScreen = MediaQuery.of(context).size.width;
   final isMobileSmall = widthOfScreen <= mobileSmallThreshold;
-  final pageBuilder = Builder(
-    builder: dialogBuilder,
-  );
+  final pageBuilder = dialogBuilder != null
+      ? Builder(
+          builder: dialogBuilder,
+        )
+      : null;
   final ConfettiController confettiController =
       ConfettiController(duration: const Duration(seconds: 1));
   confettiController.play();