From 30cde90a689ce3617a8d29a087d73daf0d300f33 Mon Sep 17 00:00:00 2001 From: ashilkn Date: Tue, 5 Nov 2024 16:18:49 +0530 Subject: [PATCH] [mob][photos] Only add initialGalleryFilter to filters to avoid in recommendations list when there are no applied filters This resolves a bug: If 'A' is the initialGalleryFilter and a filter 'B' is applied (in this state both A and B filters are applied), and then the filter 'A' is removed, in recommendations, filter 'A' is not recommended since it's passed as a filter to avoid in recommendations --- .../state/search_filter_data_provider.dart | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/mobile/lib/ui/viewer/gallery/state/search_filter_data_provider.dart b/mobile/lib/ui/viewer/gallery/state/search_filter_data_provider.dart index 614ad8bce2..c78c4ab027 100644 --- a/mobile/lib/ui/viewer/gallery/state/search_filter_data_provider.dart +++ b/mobile/lib/ui/viewer/gallery/state/search_filter_data_provider.dart @@ -98,13 +98,18 @@ class SearchFilterDataProvider { filters.sort((a, b) => b.relevance().compareTo(a.relevance())); + final List filtersToAvoid = [ + ...appliedFilters, + ...recommendations, + ]; + + if (appliedFilters.isEmpty) { + filtersToAvoid.add(initialGalleryFilter); + } + _recommendedFiltersNotifier.addFilters( filters, - filtersToAvoid: [ - initialGalleryFilter, - ...appliedFilters, - ...recommendations, - ], + filtersToAvoid: filtersToAvoid, ); } }