From 2fb655a74fdfd141c71b21942121caccd19729ff Mon Sep 17 00:00:00 2001 From: "Mr. Dragon" Date: Wed, 31 Jul 2019 00:10:20 +0530 Subject: [PATCH] AppList : Remove duplicate search results due to ads --- .../aurora/store/adapter/InstalledAppsAdapter.java | 5 +++++ app/src/main/java/com/aurora/store/model/App.java | 13 +++++++++++++ 2 files changed, 18 insertions(+) diff --git a/app/src/main/java/com/aurora/store/adapter/InstalledAppsAdapter.java b/app/src/main/java/com/aurora/store/adapter/InstalledAppsAdapter.java index b784163e8..617e76da3 100644 --- a/app/src/main/java/com/aurora/store/adapter/InstalledAppsAdapter.java +++ b/app/src/main/java/com/aurora/store/adapter/InstalledAppsAdapter.java @@ -45,7 +45,9 @@ import com.bumptech.glide.load.resource.drawable.DrawableTransitionOptions; import java.util.ArrayList; import java.util.Collections; +import java.util.LinkedHashSet; import java.util.List; +import java.util.Set; import butterknife.BindView; import butterknife.ButterKnife; @@ -95,6 +97,9 @@ public class InstalledAppsAdapter extends RecyclerView.Adapter appList) { this.appList.clear(); this.appList = appList; + final Set appSet = new LinkedHashSet<>(appList); + appList.clear(); + appList.addAll(appSet); if (listType == ListType.INSTALLED || listType == ListType.UPDATES) Collections.sort(appList, (App1, App2) -> App1.getDisplayName().compareToIgnoreCase(App2.getDisplayName())); diff --git a/app/src/main/java/com/aurora/store/model/App.java b/app/src/main/java/com/aurora/store/model/App.java index 8cd498ff9..9aca54b3d 100644 --- a/app/src/main/java/com/aurora/store/model/App.java +++ b/app/src/main/java/com/aurora/store/model/App.java @@ -410,6 +410,19 @@ public class App implements Comparable { return getDisplayName().compareToIgnoreCase(o.getDisplayName()); } + @Override + public boolean equals(Object obj) { + if (!(obj instanceof App)) + return false; + + return getPackageName().equals(((App) obj).getPackageName()); + } + + @Override + public int hashCode() { + return (getPackageName().isEmpty()) ? 0 : getPackageName().hashCode(); + } + public enum Restriction { GENERIC(-1),