mirror of
https://gitlab.com/mysocialportal/relatica
synced 2024-10-19 11:43:32 +00:00
25 lines
601 B
Dart
25 lines
601 B
Dart
|
import 'package:flutter/widgets.dart';
|
||
|
import 'package:url_launcher/url_launcher.dart';
|
||
|
|
||
|
import 'snackbar_builder.dart';
|
||
|
|
||
|
Future<bool> openUrlStringInSystembrowser(
|
||
|
BuildContext context, String url, String label) async {
|
||
|
final uri = Uri.tryParse(url);
|
||
|
if (uri == null) {
|
||
|
buildSnackbar(context, 'Bad link: $url');
|
||
|
return false;
|
||
|
}
|
||
|
if (await canLaunchUrl(uri)) {
|
||
|
buildSnackbar(
|
||
|
context,
|
||
|
'Attempting to launch $label: $url',
|
||
|
);
|
||
|
await launchUrl(uri);
|
||
|
} else {
|
||
|
buildSnackbar(context, 'Unable to launch $label: $url');
|
||
|
return false;
|
||
|
}
|
||
|
return true;
|
||
|
}
|