From c3894680378f681a696777c35f8902ea59204e27 Mon Sep 17 00:00:00 2001 From: emanuele-f Date: Sat, 6 Feb 2021 15:18:50 +0100 Subject: [PATCH] Fix filter icon issues --- .../emanuelef/remote_capture/MainActivity.java | 16 +++++++++++----- .../java/com/emanuelef/remote_capture/Utils.java | 2 +- app/src/main/res/layout/connection_item.xml | 4 ++-- 3 files changed, 14 insertions(+), 8 deletions(-) diff --git a/app/src/main/java/com/emanuelef/remote_capture/MainActivity.java b/app/src/main/java/com/emanuelef/remote_capture/MainActivity.java index bbe0eb5d..bb4fd4e4 100644 --- a/app/src/main/java/com/emanuelef/remote_capture/MainActivity.java +++ b/app/src/main/java/com/emanuelef/remote_capture/MainActivity.java @@ -25,6 +25,7 @@ import android.content.DialogInterface; import android.content.Intent; import android.content.IntentFilter; import android.content.SharedPreferences; +import android.graphics.drawable.Drawable; import android.net.Uri; import android.net.VpnService; @@ -59,6 +60,7 @@ import cat.ereza.customactivityoncrash.config.CaocConfig; public class MainActivity extends AppCompatActivity implements LoaderManager.LoaderCallbacks>, AppStateListener { SharedPreferences mPrefs; Menu mMenu; + Drawable mFilterIcon; String mFilterApp; boolean mOpenAppsWhenDone; List mInstalledApps; @@ -227,6 +229,7 @@ public class MainActivity extends AppCompatActivity implements LoaderManager.Loa MenuInflater menuInflater = getMenuInflater(); menuInflater.inflate(R.menu.settings_menu, menu); mMenu = menu; + mFilterIcon = mMenu.getItem(MENU_ITEM_APP_SELECTOR_IDX).getIcon(); recheckFragments(); @@ -347,7 +350,7 @@ public class MainActivity extends AppCompatActivity implements LoaderManager.Loa } AppDescriptor findAppByUid(int uid) { - if (mInstalledApps == null) + if((mInstalledApps == null) || (uid == -1)) return (null); for (int i = 0; i < mInstalledApps.size(); i++) { @@ -485,11 +488,14 @@ public class MainActivity extends AppCompatActivity implements LoaderManager.Loa apps.setSelectedAppListener(new AppsView.OnSelectedAppListener() { @Override public void onSelectedApp(AppDescriptor app) { - // Ignore the "no filter" app - if(app.getUid() != -1) + if(app.getUid() != -1) { + // an app has been selected mFilterApp = app.getPackageName(); - - setSelectedAppIcon(app); + setSelectedAppIcon(app); + } else { + // no filter + mMenu.getItem(MENU_ITEM_APP_SELECTOR_IDX).setIcon(mFilterIcon); + } // dismiss the dialog alert.cancel(); diff --git a/app/src/main/java/com/emanuelef/remote_capture/Utils.java b/app/src/main/java/com/emanuelef/remote_capture/Utils.java index 6b788d56..ef77c7ef 100644 --- a/app/src/main/java/com/emanuelef/remote_capture/Utils.java +++ b/app/src/main/java/com/emanuelef/remote_capture/Utils.java @@ -87,7 +87,7 @@ public class Utils { List packs = pm.getInstalledPackages(0); // Add the "No Filter" app - Drawable icon = context.getResources().getDrawable(android.R.drawable.ic_menu_view); + Drawable icon = context.getResources().getDrawable(android.R.color.transparent); apps.add(new AppDescriptor("", icon, context.getResources().getString(R.string.no_filter), -1, false)); Log.d("APPS", "num apps (system+user): " + packs.size()); diff --git a/app/src/main/res/layout/connection_item.xml b/app/src/main/res/layout/connection_item.xml index c7545d30..cf632c2a 100644 --- a/app/src/main/res/layout/connection_item.xml +++ b/app/src/main/res/layout/connection_item.xml @@ -5,10 +5,10 @@ android:layout_height="40dp"> + android:layout_margin="4dp" />