url launching with feedback refactored

This commit is contained in:
Fabian Freund
2024-06-05 15:56:39 +02:00
parent eb6a4b9f87
commit b8100b1823
4 changed files with 25 additions and 26 deletions
+19
View File
@@ -1,4 +1,5 @@
import 'package:flutter/material.dart';
import 'package:url_launcher/url_launcher.dart';
void showErrorMessage(BuildContext context, String message) {
final snackBar = SnackBar(
@@ -12,3 +13,21 @@ void showErrorMessage(BuildContext context, String message) {
);
ScaffoldMessenger.of(context).showSnackBar(snackBar);
}
Future<void> launchUrlFeedback(
BuildContext context,
Uri url, {
LaunchMode mode = LaunchMode.externalApplication,
}) async {
if (!await launchUrl(
url,
mode: mode,
)) {
if (context.mounted) {
showErrorMessage(
context,
'Could not launch URL ($url)',
);
}
}
}