From 5346f6e1bf2d49fe18595931c5958e1ae50ebd6f Mon Sep 17 00:00:00 2001 From: aAbed <39409020+TheAabedKhan@users.noreply.github.com> Date: Sat, 5 Aug 2023 19:04:36 +0545 Subject: [PATCH] fix(patch-item): hide universal patches if not enabled (#1087) --- lib/services/patcher_api.dart | 22 +++++++++++-------- .../patches_selector_viewmodel.dart | 9 +++++++- 2 files changed, 21 insertions(+), 10 deletions(-) diff --git a/lib/services/patcher_api.dart b/lib/services/patcher_api.dart index 568e6183..df99db8b 100644 --- a/lib/services/patcher_api.dart +++ b/lib/services/patcher_api.dart @@ -103,16 +103,20 @@ class PatcherAPI { } List getFilteredPatches(String packageName) { - if (!filteredPatches.keys.contains(packageName)) { - final List patches = _patches - .where( - (patch) => - patch.compatiblePackages.isEmpty || - !patch.name.contains('settings') && - patch.compatiblePackages - .any((pack) => pack.name == packageName), - ) + final List patches = _patches + .where( + (patch) => + patch.compatiblePackages.isEmpty || + !patch.name.contains('settings') && + patch.compatiblePackages + .any((pack) => pack.name == packageName), + ) + .toList(); + if (!_managerAPI.areUniversalPatchesEnabled()) { + filteredPatches[packageName] = patches + .where((patch) => patch.compatiblePackages.isNotEmpty) .toList(); + } else { filteredPatches[packageName] = patches; } return filteredPatches[packageName]; diff --git a/lib/ui/views/patches_selector/patches_selector_viewmodel.dart b/lib/ui/views/patches_selector/patches_selector_viewmodel.dart index ca776ccf..b480f51c 100644 --- a/lib/ui/views/patches_selector/patches_selector_viewmodel.dart +++ b/lib/ui/views/patches_selector/patches_selector_viewmodel.dart @@ -81,7 +81,7 @@ class PatchesSelectorViewModel extends BaseViewModel { } List getQueriedPatches(String query) { - return patches + final List patch = patches .where( (patch) => query.isEmpty || @@ -90,6 +90,13 @@ class PatchesSelectorViewModel extends BaseViewModel { patch.getSimpleName().toLowerCase().contains(query.toLowerCase()), ) .toList(); + if (_managerAPI.areUniversalPatchesEnabled()) { + return patch; + } else { + return patch + .where((patch) => patch.compatiblePackages.isNotEmpty) + .toList(); + } } String getAppVersion() {