mirror of
https://github.com/jagandeepbrar/lunasea.git
synced 2026-08-31 12:42:34 +00:00
feat(tautulli): add ability to open media in Plex
This commit is contained in:
@@ -1,17 +1,17 @@
|
||||
import 'package:lunasea/system/logger.dart';
|
||||
import 'package:url_launcher/url_launcher.dart';
|
||||
import 'package:url_launcher/url_launcher_string.dart';
|
||||
|
||||
extension StringAsLinksExtension on String {
|
||||
Future<bool> _launchUniversal(uri) async {
|
||||
return await launchUrl(
|
||||
Future<bool> _launchUniversal(String uri) async {
|
||||
return await launchUrlString(
|
||||
uri,
|
||||
webOnlyWindowName: '_blank',
|
||||
mode: LaunchMode.externalNonBrowserApplication,
|
||||
mode: LaunchMode.externalApplication,
|
||||
);
|
||||
}
|
||||
|
||||
Future<bool> _launchDefault(uri) async {
|
||||
return await launchUrl(
|
||||
Future<bool> _launchDefault(String uri) async {
|
||||
return await launchUrlString(
|
||||
uri,
|
||||
webOnlyWindowName: '_blank',
|
||||
mode: LaunchMode.platformDefault,
|
||||
@@ -20,9 +20,8 @@ extension StringAsLinksExtension on String {
|
||||
|
||||
Future<void> openLink() async {
|
||||
try {
|
||||
Uri uri = Uri.parse(this);
|
||||
if (await _launchUniversal(uri)) return;
|
||||
await _launchDefault(uri);
|
||||
if (await _launchUniversal(this)) return;
|
||||
await _launchDefault(this);
|
||||
} catch (error, stack) {
|
||||
LunaLogger().error(
|
||||
'Unable to open URL',
|
||||
@@ -32,6 +31,10 @@ extension StringAsLinksExtension on String {
|
||||
}
|
||||
}
|
||||
|
||||
Future<bool> canOpenUrl() async {
|
||||
return canLaunchUrlString(this);
|
||||
}
|
||||
|
||||
Future<void> openImdb() async =>
|
||||
await 'https://www.imdb.com/title/$this'.openLink();
|
||||
|
||||
|
||||
Reference in New Issue
Block a user