From 3cac4d6ea6a41d2071f6de4b1a2dbb4642383c7b Mon Sep 17 00:00:00 2001 From: SayantanRC Date: Mon, 11 Jul 2022 15:40:06 +0530 Subject: [PATCH 1/2] issue_5783: store gplay and cleanapk package name search results in separate variables and add them in list later --- .../java/foundation/e/apps/api/fused/FusedAPIImpl.kt | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/foundation/e/apps/api/fused/FusedAPIImpl.kt b/app/src/main/java/foundation/e/apps/api/fused/FusedAPIImpl.kt index fc32cadeb..bf4eb5403 100644 --- a/app/src/main/java/foundation/e/apps/api/fused/FusedAPIImpl.kt +++ b/app/src/main/java/foundation/e/apps/api/fused/FusedAPIImpl.kt @@ -225,6 +225,8 @@ class FusedAPIImpl @Inject constructor( */ return liveData { val packageSpecificResults = ArrayList() + var gplayPackageResult: FusedApp? = null + var cleanapkPackageResult: FusedApp? = null val status = runCodeBlockWithTimeout({ if (preferenceManagerModule.preferredApplicationType() == APP_TYPE_ANY) { @@ -235,7 +237,7 @@ class FusedAPIImpl @Inject constructor( */ getApplicationDetails(query, query, authData, Origin.GPLAY).let { if (it.second == ResultStatus.OK) { - packageSpecificResults.add(it.first) + gplayPackageResult = it.first } } } catch (_: Exception) {} @@ -246,11 +248,14 @@ class FusedAPIImpl @Inject constructor( * Blank result to be filtered out. */ if (it.isSuccess() && it.data!!.package_name.isNotBlank()) { - packageSpecificResults.add(it.data!!) + cleanapkPackageResult = it.data!! } } }) + gplayPackageResult?.let { packageSpecificResults.add(it) } + cleanapkPackageResult?.let { packageSpecificResults.add(it) } + /* * If there was a timeout, return it and don't try to fetch anything else. * Also send true in the pair to signal more results being loaded. -- GitLab From 37ef8fd9be85fb3b6a8a6eb8b9626f9ea6cbf459 Mon Sep 17 00:00:00 2001 From: SayantanRC Date: Mon, 11 Jul 2022 16:26:36 +0530 Subject: [PATCH 2/2] issue_5783: only show cleanapk package name result if the same package exists for both fdroid and gplay --- .../java/foundation/e/apps/api/fused/FusedAPIImpl.kt | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/foundation/e/apps/api/fused/FusedAPIImpl.kt b/app/src/main/java/foundation/e/apps/api/fused/FusedAPIImpl.kt index bf4eb5403..1b998ed90 100644 --- a/app/src/main/java/foundation/e/apps/api/fused/FusedAPIImpl.kt +++ b/app/src/main/java/foundation/e/apps/api/fused/FusedAPIImpl.kt @@ -253,8 +253,14 @@ class FusedAPIImpl @Inject constructor( } }) - gplayPackageResult?.let { packageSpecificResults.add(it) } - cleanapkPackageResult?.let { packageSpecificResults.add(it) } + /* + * Currently only show open source package result if exists in both fdroid and gplay. + * This is temporary. + * Issue: https://gitlab.e.foundation/e/backlog/-/issues/5783 + */ + cleanapkPackageResult?.let { packageSpecificResults.add(it) } ?: run { + gplayPackageResult?.let { packageSpecificResults.add(it) } + } /* * If there was a timeout, return it and don't try to fetch anything else. -- GitLab