From acfc183eec172656f28990797bf91580dfa3e3b9 Mon Sep 17 00:00:00 2001 From: Thomas Date: Mon, 7 Dec 2020 16:51:02 +0100 Subject: [PATCH] prepare filters --- .../fragments/ComputeAppListTask.java | 17 ++++++++++++++++- .../exodusprivacy/fragments/HomeFragment.java | 2 +- .../exodusprivacy/fragments/ReportFragment.java | 5 ++--- .../fragments/TrackerFragment.java | 11 ++++------- .../res/drawable/ic_baseline_filter_list_24.xml | 10 ++++++++++ app/src/main/res/menu/main.xml | 5 +++++ 6 files changed, 38 insertions(+), 12 deletions(-) create mode 100644 app/src/main/res/drawable/ic_baseline_filter_list_24.xml diff --git a/app/src/main/java/org/eu/exodus_privacy/exodusprivacy/fragments/ComputeAppListTask.java b/app/src/main/java/org/eu/exodus_privacy/exodusprivacy/fragments/ComputeAppListTask.java index 9b6f6b2..1ffab28 100644 --- a/app/src/main/java/org/eu/exodus_privacy/exodusprivacy/fragments/ComputeAppListTask.java +++ b/app/src/main/java/org/eu/exodus_privacy/exodusprivacy/fragments/ComputeAppListTask.java @@ -22,12 +22,15 @@ class ComputeAppListTask extends AsyncTask databaseManagerRef; private final WeakReference listenerRef; + order userOrderChoice; + ComputeAppListTask(WeakReference packageManagerRef, WeakReference databaseManagerRef, - WeakReference listenerRef) { + WeakReference listenerRef, order orderCoice) { this.packageManagerRef = packageManagerRef; this.databaseManagerRef = databaseManagerRef; this.listenerRef = listenerRef; + userOrderChoice = orderCoice; } protected List doInBackground(Void... params) { @@ -39,10 +42,22 @@ class ComputeAppListTask extends AsyncTask installedPackages = packageManager.getInstalledPackages(PackageManager.GET_PERMISSIONS); vms = applyStoreFilter(installedPackages, databaseManager, packageManager); convertPackagesToViewModels(vms, databaseManager, packageManager); + } + //Reordering should done here + if (userOrderChoice != order.DEFAULT) { + } return vms; } + public enum order { + DEFAULT, + MOST_TRACKERS, + LESS_TRACKERS, + MOST_PERMISSIONS, + LESS_PERMISSIONS, + } + @Override protected void onPostExecute(List vms) { Listener listener = listenerRef.get(); diff --git a/app/src/main/java/org/eu/exodus_privacy/exodusprivacy/fragments/HomeFragment.java b/app/src/main/java/org/eu/exodus_privacy/exodusprivacy/fragments/HomeFragment.java index 25abeb7..e660d0e 100644 --- a/app/src/main/java/org/eu/exodus_privacy/exodusprivacy/fragments/HomeFragment.java +++ b/app/src/main/java/org/eu/exodus_privacy/exodusprivacy/fragments/HomeFragment.java @@ -190,7 +190,7 @@ public class HomeFragment extends Fragment implements ComputeAppListTask.Listene new ComputeAppListTask( new WeakReference<>(packageManager), new WeakReference<>(DatabaseManager.getInstance(getActivity())), - new WeakReference<>(this) + new WeakReference<>(this), ComputeAppListTask.order.DEFAULT ).execute(); } diff --git a/app/src/main/java/org/eu/exodus_privacy/exodusprivacy/fragments/ReportFragment.java b/app/src/main/java/org/eu/exodus_privacy/exodusprivacy/fragments/ReportFragment.java index 71fa77a..60f0dfb 100644 --- a/app/src/main/java/org/eu/exodus_privacy/exodusprivacy/fragments/ReportFragment.java +++ b/app/src/main/java/org/eu/exodus_privacy/exodusprivacy/fragments/ReportFragment.java @@ -28,7 +28,6 @@ import android.os.Bundle; import android.text.method.LinkMovementMethod; import android.view.LayoutInflater; import android.view.Menu; -import android.view.MenuItem; import android.view.View; import android.view.ViewGroup; @@ -164,8 +163,8 @@ public class ReportFragment extends Fragment implements Updatable { @Override public void onPrepareOptionsMenu(Menu menu) { - MenuItem item = menu.findItem(R.id.action_filter); - item.setVisible(false); + menu.findItem(R.id.action_filter).setVisible(false); + menu.findItem(R.id.action_filter_options).setVisible(false); } public ApplicationViewModel getModel() { diff --git a/app/src/main/java/org/eu/exodus_privacy/exodusprivacy/fragments/TrackerFragment.java b/app/src/main/java/org/eu/exodus_privacy/exodusprivacy/fragments/TrackerFragment.java index 0015d62..b45c89a 100644 --- a/app/src/main/java/org/eu/exodus_privacy/exodusprivacy/fragments/TrackerFragment.java +++ b/app/src/main/java/org/eu/exodus_privacy/exodusprivacy/fragments/TrackerFragment.java @@ -9,7 +9,6 @@ import android.text.Html; import android.text.method.LinkMovementMethod; import android.view.LayoutInflater; import android.view.Menu; -import android.view.MenuItem; import android.view.View; import android.view.ViewGroup; @@ -97,11 +96,9 @@ public class TrackerFragment extends Fragment implements ComputeAppListTask.List @Override public void onPrepareOptionsMenu(Menu menu) { - MenuItem item = menu.findItem(R.id.action_filter); - item.setVisible(false); - item = menu.findItem(R.id.action_settings); - item.setVisible(false); - + menu.findItem(R.id.action_filter).setVisible(false); + menu.findItem(R.id.action_settings).setVisible(false); + menu.findItem(R.id.action_filter_options).setVisible(false); } private void displayAppListAsync() { @@ -118,7 +115,7 @@ public class TrackerFragment extends Fragment implements ComputeAppListTask.List new ComputeAppListTask( new WeakReference<>(packageManager), new WeakReference<>(DatabaseManager.getInstance(getActivity())), - new WeakReference<>(this) + new WeakReference<>(this), ComputeAppListTask.order.DEFAULT ).execute(); } diff --git a/app/src/main/res/drawable/ic_baseline_filter_list_24.xml b/app/src/main/res/drawable/ic_baseline_filter_list_24.xml new file mode 100644 index 0000000..dbf1a75 --- /dev/null +++ b/app/src/main/res/drawable/ic_baseline_filter_list_24.xml @@ -0,0 +1,10 @@ + + + diff --git a/app/src/main/res/menu/main.xml b/app/src/main/res/menu/main.xml index 3e3714e..e5acf95 100644 --- a/app/src/main/res/menu/main.xml +++ b/app/src/main/res/menu/main.xml @@ -7,6 +7,11 @@ android:title="@string/menu_action_filter" app:actionViewClass="androidx.appcompat.widget.SearchView" app:showAsAction="always|collapseActionView" /> +