diff --git a/lib/ui/viewer/location/radius_picker_widget.dart b/lib/ui/viewer/location/radius_picker_widget.dart index 791903b5c..e2753a93a 100644 --- a/lib/ui/viewer/location/radius_picker_widget.dart +++ b/lib/ui/viewer/location/radius_picker_widget.dart @@ -1,5 +1,6 @@ import "package:flutter/material.dart"; import "package:flutter/services.dart"; +import "package:logging/logging.dart"; import "package:photos/generated/l10n.dart"; import "package:photos/states/location_state.dart"; import "package:photos/theme/colors.dart"; @@ -35,6 +36,7 @@ class RadiusPickerWidget extends StatefulWidget { } class _RadiusPickerWidgetState extends State { + final _logger = Logger("RadiusPickerWidget"); @override void initState() { super.initState(); @@ -174,8 +176,8 @@ class _RadiusPickerWidgetState extends State { return result; } - void _customRadiusOnTap() { - showTextInputDialog( + Future _customRadiusOnTap() async { + final result = await showTextInputDialog( context, title: "Custom radius", onSubmit: (customRadius) async { @@ -192,17 +194,20 @@ class _RadiusPickerWidgetState extends State { }); } } else { - showErrorDialog( - context, - "Invalid radius", - "Please enter a valid radius", - ); + throw Exception("Radius is null"); } }, submitButtonLabel: "Done", textInputFormatter: [NumberWithDecimalInputFormatter(maxValue: 10000)], textInputType: const TextInputType.numberWithOptions(decimal: true), ); + if (result is Exception) { + await showGenericErrorDialog(context: context); + _logger.severe( + "Failed to create custom radius", + result, + ); + } } }