mirror of
https://github.com/ImranR98/Obtainium.git
synced 2025-10-22 02:13:47 +02:00
Allow entire app config to be shared as link (see https://github.com/ImranR98/apps.obtainium.imranr.dev/issues/5)
This commit is contained in:
@@ -1,3 +1,5 @@
|
||||
import 'dart:convert';
|
||||
|
||||
import 'package:easy_localization/easy_localization.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter/services.dart';
|
||||
@@ -871,20 +873,44 @@ class AppsPageState extends State<AppsPage> {
|
||||
onPressed: () {
|
||||
String urls = '';
|
||||
for (var a in selectedApps) {
|
||||
urls += 'obtainium://add/${a.url}\n';
|
||||
urls += '${a.url}\n';
|
||||
}
|
||||
urls = urls.substring(0, urls.length - 1);
|
||||
Share.share(urls,
|
||||
subject: tr('selectedAppURLsFromObtainium'));
|
||||
subject:
|
||||
'${tr('obtainium')} - ${tr('appsString')}');
|
||||
Navigator.of(context).pop();
|
||||
},
|
||||
tooltip: tr('shareSelectedAppURLs'),
|
||||
icon: const Icon(Icons.share),
|
||||
icon: const Icon(Icons.share_rounded),
|
||||
),
|
||||
IconButton(
|
||||
onPressed: resetSelectedAppsInstallStatuses,
|
||||
tooltip: tr('resetInstallStatus'),
|
||||
icon: const Icon(Icons.restore_page_outlined),
|
||||
onPressed: selectedAppIds.isEmpty
|
||||
? null
|
||||
: () {
|
||||
String urls =
|
||||
'<p>${tr('customLinkMessage')}:</p>\n\n<ul>\n';
|
||||
for (var a in selectedApps) {
|
||||
urls +=
|
||||
' <li><a href="obtainium://app/${Uri.encodeComponent(jsonEncode({
|
||||
'id': a.id,
|
||||
'url': a.url,
|
||||
'author': a.author,
|
||||
'name': a.name,
|
||||
'preferredApkIndex':
|
||||
a.preferredApkIndex,
|
||||
'additionalSettings':
|
||||
jsonEncode(a.additionalSettings)
|
||||
}))}">${a.name}</a></li>\n';
|
||||
}
|
||||
urls +=
|
||||
'</ul>\n\n<p><a href="${obtainiumApp.url}">${tr('about')}</a></p>';
|
||||
Share.share(urls,
|
||||
subject:
|
||||
'${tr('obtainium')} - ${tr('appsString')}');
|
||||
},
|
||||
tooltip: tr('shareAppConfigLinks'),
|
||||
icon: const Icon(Icons.ios_share),
|
||||
),
|
||||
]),
|
||||
),
|
||||
|
Reference in New Issue
Block a user