Skip to content

Commit

Permalink
Merge pull request #1826 from ImranR98/dev
Browse files Browse the repository at this point in the history
- Improved APKPure compatibility by prioritizing APK when available (over XAPK)
- Auto-select direct APK source for URLs ending in '.apk' (#1820)
- Handle install failures more gracefully on apps page (#1782)
- Enabled ZH-TW and EO languages
- Added "allow insecure request" option (#1825)
  • Loading branch information
ImranR98 authored Sep 8, 2024
2 parents 704f209 + d801994 commit 5be2c9b
Show file tree
Hide file tree
Showing 51 changed files with 166 additions and 83 deletions.
2 changes: 1 addition & 1 deletion .flutter
Submodule .flutter updated 101 files
1 change: 1 addition & 0 deletions assets/translations/bs.json
Original file line number Diff line number Diff line change
Expand Up @@ -314,6 +314,7 @@
"appVerifierInstructionToast": "Dijeli sa AppVerifier-om, zatim se vratite kada ste spremni.",
"wiki": "Pomoć/Wiki",
"crowdsourcedConfigsLabel": "Konfiguracije aplikacije obezbeđene pomoću velikog broja ljudi (crowdsourcing) (koristite na svoju odgovornost)",
"allowInsecure": "Allow insecure HTTP requests",
"removeAppQuestion": {
"one": "Želite li ukloniti aplikaciju?",
"other": "Želite li ukloniti aplikacije?"
Expand Down
1 change: 1 addition & 0 deletions assets/translations/cs.json
Original file line number Diff line number Diff line change
Expand Up @@ -314,6 +314,7 @@
"appVerifierInstructionToast": "Sdílejte do aplikace AppVerifier a po dokončení se sem vraťte.",
"wiki": "Nápověda/Wiki",
"crowdsourcedConfigsLabel": "Konfigurace aplikací s využitím crowdsourcingu (použití na vlastní nebezpečí)",
"allowInsecure": "Povolení nezabezpečených požadavků HTTP",
"removeAppQuestion": {
"one": "Odstranit Apku?",
"other": "Odstranit Apky?"
Expand Down
1 change: 1 addition & 0 deletions assets/translations/da.json
Original file line number Diff line number Diff line change
Expand Up @@ -314,6 +314,7 @@
"appVerifierInstructionToast": "Del til AppVerifier, og vend tilbage hertil, når du er klar.",
"wiki": "Hjælp/Wiki",
"crowdsourcedConfigsLabel": "Crowdsourcede app-konfigurationer (brug på egen risiko)",
"allowInsecure": "Tillad usikre HTTP-anmodninger",
"removeAppQuestion": {
"one": "Fjern app?",
"other": "Fjern apps?"
Expand Down
1 change: 1 addition & 0 deletions assets/translations/de.json
Original file line number Diff line number Diff line change
Expand Up @@ -314,6 +314,7 @@
"appVerifierInstructionToast": "Geben Sie die Daten an AppVerifier weiter und kehren Sie dann hierher zurück, wenn Sie fertig sind.",
"wiki": "Hilfe/Wiki",
"crowdsourcedConfigsLabel": "Crowdsourced App-Konfigurationen (Verwendung auf eigene Gefahr)",
"allowInsecure": "Unsichere HTTP-Anfragen zulassen",
"removeAppQuestion": {
"one": "App entfernen?",
"other": "Apps entfernen?"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -102,7 +102,7 @@
"searchX": "Serĉi {}",
"noResults": "Neniu rezulto",
"importX": "Importi {}",
"importedAppsIdDisclaimer": "La importitaj apoj povas montriĝi malĝuste kiel \"Neinstalitaj\".\nPor solvi tion, reinstalu ilin per Obtainium.\Tiu ne afekcios la apodatumoj.\n\nAkefcias nur la URL-ajn lak triajn importmetodojn.",
"importedAppsIdDisclaimer": "La importitaj apoj povas montriĝi malĝuste kiel \"Neinstalitaj\".\nPor solvi tion, reinstalu ilin per Obtainium.\nTiu ne afekcios la apodatumoj.\n\nAkefcias nur la URL-ajn lak triajn importmetodojn.",
"importErrors": "Eraroj de importado",
"importedXOfYApps": "{} apoj el {} importitaj.",
"followingURLsHadErrors": "La sekvantaj URLj havis erarojn:",
Expand Down Expand Up @@ -314,6 +314,7 @@
"appVerifierInstructionToast": "Diskonigu kun AppVerifier, poste revenu ĉi tie kiam preta.",
"wiki": "Helpo/Vikio",
"crowdsourcedConfigsLabel": "Komunumaj apo-agordoj (uzu kun singardo)",
"allowInsecure": "Allow insecure HTTP requests",
"removeAppQuestion": {
"one": "Forigi la aplikaĵon?",
"other": "Forigi la aplikaĵojn?"
Expand Down
1 change: 1 addition & 0 deletions assets/translations/en.json
Original file line number Diff line number Diff line change
Expand Up @@ -314,6 +314,7 @@
"appVerifierInstructionToast": "Share to AppVerifier, then return here when ready.",
"wiki": "Help/Wiki",
"crowdsourcedConfigsLabel": "Crowdsourced App Configurations (use at your own risk)",
"allowInsecure": "Allow insecure HTTP requests",
"removeAppQuestion": {
"one": "Remove App?",
"other": "Remove Apps?"
Expand Down
1 change: 1 addition & 0 deletions assets/translations/es.json
Original file line number Diff line number Diff line change
Expand Up @@ -314,6 +314,7 @@
"appVerifierInstructionToast": "Comparta con AppVerifier y vuelva aquí cuando esté listo.",
"wiki": "Ayuda/Wiki",
"crowdsourcedConfigsLabel": "Crowdsourced App Configurations (uso bajo su propia responsabilidad)",
"allowInsecure": "Permitir peticiones HTTP inseguras",
"removeAppQuestion": {
"one": "¿Eliminar aplicación?",
"other": "¿Eliminar aplicaciones?"
Expand Down
1 change: 1 addition & 0 deletions assets/translations/fa.json
Original file line number Diff line number Diff line change
Expand Up @@ -314,6 +314,7 @@
"appVerifierInstructionToast": "در AppVerifier به اشتراک بگذارید، سپس پس از آماده شدن به اینجا برگردید.",
"wiki": "راهنما/ویکی",
"crowdsourcedConfigsLabel": "تنظیمات برنامه Crowdsourced (با مسئولیت خود استفاده کنید)",
"allowInsecure": "Allow insecure HTTP requests",
"removeAppQuestion": {
"one": "برنامه حذف شود؟",
"other": "برنامه ها حذف شوند؟"
Expand Down
1 change: 1 addition & 0 deletions assets/translations/fr.json
Original file line number Diff line number Diff line change
Expand Up @@ -314,6 +314,7 @@
"appVerifierInstructionToast": "Partagez avec AppVerifier, puis revenez ici lorsque tout est prêt.",
"wiki": "Aide/Wiki",
"crowdsourcedConfigsLabel": "Configurations d'applications par la communauté (à utiliser à vos risques et périls)",
"allowInsecure": "Autoriser les requêtes HTTP non sécurisées",
"removeAppQuestion": {
"one": "Supprimer l'application ?",
"other": "Supprimer les applications ?"
Expand Down
1 change: 1 addition & 0 deletions assets/translations/hu.json
Original file line number Diff line number Diff line change
Expand Up @@ -314,6 +314,7 @@
"appVerifierInstructionToast": "Ossza meg az AppVerifierrel, majd térjen vissza ide, ha kész.",
"wiki": "Súgó/Wiki",
"crowdsourcedConfigsLabel": "Crowdsourced App Configurations (használat saját felelősségre)",
"allowInsecure": "Bizonytalan HTTP-kérések engedélyezése",
"removeAppQuestion": {
"one": "Eltávolítja az alkalmazást?",
"other": "Eltávolítja az alkalmazásokat?"
Expand Down
1 change: 1 addition & 0 deletions assets/translations/it.json
Original file line number Diff line number Diff line change
Expand Up @@ -314,6 +314,7 @@
"appVerifierInstructionToast": "Condividete con AppVerifier, quindi tornate qui quando siete pronti.",
"wiki": "Aiuto/Wiki",
"crowdsourcedConfigsLabel": "Configurazioni di app in crowdsourcing (uso a proprio rischio)",
"allowInsecure": "Consentire le richieste HTTP non sicure",
"removeAppQuestion": {
"one": "Rimuovere l'app?",
"other": "Rimuovere le app?"
Expand Down
1 change: 1 addition & 0 deletions assets/translations/ja.json
Original file line number Diff line number Diff line change
Expand Up @@ -314,6 +314,7 @@
"appVerifierInstructionToast": "AppVerifierに共有し、準備ができたらここに戻ってください。",
"wiki": "ヘルプ/ウィキ",
"crowdsourcedConfigsLabel": "クラウドソーシングによるアプリの設定(利用は自己責任で)",
"allowInsecure": "安全でないHTTPリクエストを許可する",
"removeAppQuestion": {
"one": "アプリを削除しますか?",
"other": "アプリを削除しますか?"
Expand Down
1 change: 1 addition & 0 deletions assets/translations/nl.json
Original file line number Diff line number Diff line change
Expand Up @@ -314,6 +314,7 @@
"appVerifierInstructionToast": "Deel het met AppVerifier en keer daarna hier terug.",
"wiki": "Help/Wiki",
"crowdsourcedConfigsLabel": "Crowdsourced App-configuraties (gebruik op eigen risico)",
"allowInsecure": "Onveilige HTTP-verzoeken toestaan",
"removeAppQuestion": {
"one": "App verwijderen?",
"other": "Apps verwijderen?"
Expand Down
1 change: 1 addition & 0 deletions assets/translations/pl.json
Original file line number Diff line number Diff line change
Expand Up @@ -314,6 +314,7 @@
"appVerifierInstructionToast": "Udostępnij w AppVerifier, a następnie wróć tutaj, gdy będziesz gotowy.",
"wiki": "Pomoc/Wiki",
"crowdsourcedConfigsLabel": "Konfiguracje aplikacji pochodzące z crowdsourcingu (korzystanie na własne ryzyko)",
"allowInsecure": "Zezwalaj na niezabezpieczone żądania HTTP",
"removeAppQuestion": {
"one": "Usunąć aplikację?",
"few": "Usunąć aplikacje?",
Expand Down
1 change: 1 addition & 0 deletions assets/translations/pt.json
Original file line number Diff line number Diff line change
Expand Up @@ -314,6 +314,7 @@
"appVerifierInstructionToast": "Partilhe com o AppVerifier e, em seguida, regresse aqui quando estiver pronto.",
"wiki": "Ajuda/Wiki",
"crowdsourcedConfigsLabel": "Configurações de aplicações de crowdsourcing (utilização por sua conta e risco)",
"allowInsecure": "Permitir pedidos HTTP inseguros",
"removeAppQuestion": {
"one": "Remover aplicativo?",
"other": "Remover aplicativos?"
Expand Down
1 change: 1 addition & 0 deletions assets/translations/ru.json
Original file line number Diff line number Diff line change
Expand Up @@ -314,6 +314,7 @@
"appVerifierInstructionToast": "Поделитесь с AppVerifier, а затем вернитесь сюда, когда будете готовы.",
"wiki": "Помощь/Вики",
"crowdsourcedConfigsLabel": "Конфигурации приложений на основе краудсорсинга (используйте на свой страх и риск)",
"allowInsecure": "Разрешить небезопасные HTTP-запросы",
"removeAppQuestion": {
"one": "Удалить приложение?",
"other": "Удалить приложения?"
Expand Down
1 change: 1 addition & 0 deletions assets/translations/sv.json
Original file line number Diff line number Diff line change
Expand Up @@ -314,6 +314,7 @@
"appVerifierInstructionToast": "Dela till AppVerifier och återvänd sedan hit när du är klar.",
"wiki": "Hjälp/Wiki",
"crowdsourcedConfigsLabel": "Crowdsourcade appkonfigurationer (använd på egen risk)",
"allowInsecure": "Tillåt osäkra HTTP-förfrågningar",
"removeAppQuestion": {
"one": "Ta Bort App?",
"other": "Ta Bort Appar?"
Expand Down
1 change: 1 addition & 0 deletions assets/translations/tr.json
Original file line number Diff line number Diff line change
Expand Up @@ -314,6 +314,7 @@
"appVerifierInstructionToast": "AppVerifier ile paylaşın, hazır olduğunuzda buraya dönün.",
"wiki": "Yardım/Wiki",
"crowdsourcedConfigsLabel": "Kitle Kaynaklı Uygulama Yapılandırmaları (riski size ait olmak üzere kullanın)",
"allowInsecure": "Güvensiz HTTP isteklerine izin ver",
"removeAppQuestion": {
"one": "Uygulamayı Kaldır?",
"other": "Uygulamaları Kaldır?"
Expand Down
1 change: 1 addition & 0 deletions assets/translations/uk.json
Original file line number Diff line number Diff line change
Expand Up @@ -314,6 +314,7 @@
"appVerifierInstructionToast": "Надішліть на AppVerifier, а потім поверніться сюди, коли будете готові.",
"wiki": "Довідка/Вікі",
"crowdsourcedConfigsLabel": "Краудсорсингові конфігурації додатків (використовуйте на свій страх і ризик)",
"allowInsecure": "Дозволити незахищені HTTP-запити",
"removeAppQuestion": {
"one": "Видалити застосунок?",
"other": "Видалити застосунки?"
Expand Down
1 change: 1 addition & 0 deletions assets/translations/vi.json
Original file line number Diff line number Diff line change
Expand Up @@ -314,6 +314,7 @@
"appVerifierInstructionToast": "Chia sẻ lên AppVerifier, sau đó quay lại đây khi sẵn sàng.",
"wiki": "Trợ giúp/Wiki",
"crowdsourcedConfigsLabel": "Crowdsourced App Configurations (use at your own risk)",
"allowInsecure": "Allow insecure HTTP requests",
"removeAppQuestion": {
"one": "Gỡ ứng dụng?",
"other": "Gỡ ứng dụng?"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -314,6 +314,7 @@
"appVerifierInstructionToast": "分享至 AppVerifier,然後準備好時回到此處。",
"wiki": "幫助/維基",
"crowdsourcedConfigsLabel": "群眾外包的應用程式設定(使用風險自負)",
"allowInsecure": "Allow insecure HTTP requests",
"removeAppQuestion": {
"one": "移除應用程式?",
"other": "移除應用程式?"
Expand Down
1 change: 1 addition & 0 deletions assets/translations/zh.json
Original file line number Diff line number Diff line change
Expand Up @@ -314,6 +314,7 @@
"appVerifierInstructionToast": "分享至 AppVerifier,完成后返回此处。",
"wiki": "帮助/Wiki",
"crowdsourcedConfigsLabel": "众包应用程序配置(使用风险自负)",
"allowInsecure": "允许不安全的 HTTP 请求",
"removeAppQuestion": {
"one": "是否删除应用?",
"other": "是否删除应用?"
Expand Down
2 changes: 1 addition & 1 deletion lib/app_sources/apkcombo.dart
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ class APKCombo extends AppSource {
}

@override
String sourceSpecificStandardizeURL(String url) {
String sourceSpecificStandardizeURL(String url, {bool forSelection = false}) {
RegExp standardUrlRegEx = RegExp(
'^https?://(www\\.)?${getSourceRegex(hosts)}/+[^/]+/+[^/]+',
caseSensitive: false);
Expand Down
2 changes: 1 addition & 1 deletion lib/app_sources/apkmirror.dart
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ class APKMirror extends AppSource {
}

@override
String sourceSpecificStandardizeURL(String url) {
String sourceSpecificStandardizeURL(String url, {bool forSelection = false}) {
RegExp standardUrlRegEx = RegExp(
'^https?://(www\\.)?${getSourceRegex(hosts)}/apk/[^/]+/[^/]+',
caseSensitive: false);
Expand Down
17 changes: 11 additions & 6 deletions lib/app_sources/apkpure.dart
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ class APKPure extends AppSource {
}

@override
String sourceSpecificStandardizeURL(String url) {
String sourceSpecificStandardizeURL(String url, {bool forSelection = false}) {
RegExp standardUrlRegExB = RegExp(
'^https?://m.${getSourceRegex(hosts)}(/+[^/]{2})?/+[^/]+/+[^/]+',
caseSensitive: false);
Expand Down Expand Up @@ -109,11 +109,16 @@ class APKPure extends AppSource {
'')
?.group(0)
?.trim();
String? type = apkInfo
?.querySelector('div.info-top span.tag')
?.text
.trim() ??
'APK';
var types = apkInfo
?.querySelectorAll('div.info-top span.tag')
.map((e) => e.text.trim())
.map((t) => t == 'APKs' ? 'APK' : t) ??
[];
String type = types.isEmpty
? 'APK'
: types.length == 1
? types.first
: types.last;
String? dateString = apkInfo
?.querySelector('div.info-bottom span.time')
?.text
Expand Down
2 changes: 1 addition & 1 deletion lib/app_sources/aptoide.dart
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ class Aptoide extends AppSource {
}

@override
String sourceSpecificStandardizeURL(String url) {
String sourceSpecificStandardizeURL(String url, {bool forSelection = false}) {
RegExp standardUrlRegEx = RegExp(
'^https?://([^\\.]+\\.){2,}${getSourceRegex(hosts)}',
caseSensitive: false);
Expand Down
2 changes: 1 addition & 1 deletion lib/app_sources/codeberg.dart
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ class Codeberg extends AppSource {
}

@override
String sourceSpecificStandardizeURL(String url) {
String sourceSpecificStandardizeURL(String url, {bool forSelection = false}) {
RegExp standardUrlRegEx = RegExp(
'^https?://(www\\.)?${getSourceRegex(hosts)}/[^/]+/[^/]+',
caseSensitive: false);
Expand Down
15 changes: 14 additions & 1 deletion lib/app_sources/directAPKLink.dart
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
import 'package:easy_localization/easy_localization.dart';
import 'package:obtainium/app_sources/html.dart';
import 'package:obtainium/custom_errors.dart';
import 'package:obtainium/providers/source_provider.dart';

class DirectAPKLink extends AppSource {
HTML html = HTML();

DirectAPKLink() {
neverAutoSelect = true;
name = tr('directAPKLink');
additionalSourceAppSpecificSettingFormItems = html
.additionalSourceAppSpecificSettingFormItems
Expand All @@ -24,6 +24,19 @@ class DirectAPKLink extends AppSource {
];
}

@override
String sourceSpecificStandardizeURL(String url, {bool forSelection = false}) {
if (!forSelection) {
return url;
}
RegExp standardUrlRegExA = RegExp('.+\\.apk\$', caseSensitive: false);
var match = standardUrlRegExA.firstMatch(url);
if (match == null) {
throw InvalidURLError(name);
}
return match.group(0)!;
}

@override
Future<Map<String, String>?> getRequestHeaders(
Map<String, dynamic> additionalSettings,
Expand Down
2 changes: 1 addition & 1 deletion lib/app_sources/fdroid.dart
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ class FDroid extends AppSource {
}

@override
String sourceSpecificStandardizeURL(String url) {
String sourceSpecificStandardizeURL(String url, {bool forSelection = false}) {
RegExp standardUrlRegExB = RegExp(
'^https?://(www\\.)?${getSourceRegex(hosts)}/+[^/]+/+packages/+[^/]+',
caseSensitive: false);
Expand Down
2 changes: 1 addition & 1 deletion lib/app_sources/fdroidrepo.dart
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ class FDroidRepo extends AppSource {
}

@override
String sourceSpecificStandardizeURL(String url) {
String sourceSpecificStandardizeURL(String url, {bool forSelection = false}) {
var standardUri = Uri.parse(url);
var pathSegments = standardUri.pathSegments;
if (pathSegments.isNotEmpty && pathSegments.last == 'index.xml') {
Expand Down
2 changes: 1 addition & 1 deletion lib/app_sources/github.dart
Original file line number Diff line number Diff line change
Expand Up @@ -154,7 +154,7 @@ class GitHub extends AppSource {
}

@override
String sourceSpecificStandardizeURL(String url) {
String sourceSpecificStandardizeURL(String url, {bool forSelection = false}) {
RegExp standardUrlRegEx = RegExp(
'^https?://(www\\.)?${getSourceRegex(hosts)}/[^/]+/[^/]+',
caseSensitive: false);
Expand Down
2 changes: 1 addition & 1 deletion lib/app_sources/gitlab.dart
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,7 @@ class GitLab extends AppSource {
}

@override
String sourceSpecificStandardizeURL(String url) {
String sourceSpecificStandardizeURL(String url, {bool forSelection = false}) {
RegExp standardUrlRegEx = RegExp(
'^https?://(www\\.)?${getSourceRegex(hosts)}/[^/]+/[^/]+',
caseSensitive: false);
Expand Down
5 changes: 3 additions & 2 deletions lib/app_sources/html.dart
Original file line number Diff line number Diff line change
Expand Up @@ -288,7 +288,7 @@ class HTML extends AppSource {
}

@override
String sourceSpecificStandardizeURL(String url) {
String sourceSpecificStandardizeURL(String url, {bool forSelection = false}) {
return url;
}

Expand Down Expand Up @@ -350,7 +350,8 @@ class HTML extends AppSource {
? rel.hashCode.toString()
: (await checkPartialDownloadHashDynamic(rel,
headers: await getRequestHeaders(additionalSettings,
forAPKDownload: true)))
forAPKDownload: true),
allowInsecure: additionalSettings['allowInsecure'] == true))
.toString();
return APKDetails(version, [rel].map((e) => MapEntry(e, e)).toList(),
AppNames(uri.host, tr('app')));
Expand Down
2 changes: 1 addition & 1 deletion lib/app_sources/huaweiappgallery.dart
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ class HuaweiAppGallery extends AppSource {
}

@override
String sourceSpecificStandardizeURL(String url) {
String sourceSpecificStandardizeURL(String url, {bool forSelection = false}) {
RegExp standardUrlRegEx = RegExp(
'^https?://(www\\.)?${getSourceRegex(hosts)}(/#)?/(app|appdl)/[^/]+',
caseSensitive: false);
Expand Down
2 changes: 1 addition & 1 deletion lib/app_sources/izzyondroid.dart
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ class IzzyOnDroid extends AppSource {
}

@override
String sourceSpecificStandardizeURL(String url) {
String sourceSpecificStandardizeURL(String url, {bool forSelection = false}) {
RegExp standardUrlRegExA = RegExp(
'^https?://android.${getSourceRegex(hosts)}/repo/apk/[^/]+',
caseSensitive: false);
Expand Down
2 changes: 1 addition & 1 deletion lib/app_sources/mullvad.dart
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ class Mullvad extends AppSource {
}

@override
String sourceSpecificStandardizeURL(String url) {
String sourceSpecificStandardizeURL(String url, {bool forSelection = false}) {
RegExp standardUrlRegEx = RegExp(
'^https?://(www\\.)?${getSourceRegex(hosts)}',
caseSensitive: false);
Expand Down
2 changes: 1 addition & 1 deletion lib/app_sources/neutroncode.dart
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ class NeutronCode extends AppSource {
}

@override
String sourceSpecificStandardizeURL(String url) {
String sourceSpecificStandardizeURL(String url, {bool forSelection = false}) {
RegExp standardUrlRegEx = RegExp(
'^https?://(www\\.)?${getSourceRegex(hosts)}/downloads/file/[^/]+',
caseSensitive: false);
Expand Down
2 changes: 1 addition & 1 deletion lib/app_sources/signal.dart
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ class Signal extends AppSource {
}

@override
String sourceSpecificStandardizeURL(String url) {
String sourceSpecificStandardizeURL(String url, {bool forSelection = false}) {
return 'https://${hosts[0]}';
}

Expand Down
2 changes: 1 addition & 1 deletion lib/app_sources/sourceforge.dart
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ class SourceForge extends AppSource {
}

@override
String sourceSpecificStandardizeURL(String url) {
String sourceSpecificStandardizeURL(String url, {bool forSelection = false}) {
var sourceRegex = getSourceRegex(hosts);
RegExp standardUrlRegExC =
RegExp('^https?://(www\\.)?$sourceRegex/p/.+', caseSensitive: false);
Expand Down
Loading

0 comments on commit 5be2c9b

Please sign in to comment.