Add option to filter game and modules
This commit is contained in:
parent
4135c357d5
commit
272e69ad70
|
|
@ -81,14 +81,22 @@ public class AppAdapter extends RecyclerView.Adapter<AppAdapter.ViewHolder> impl
|
||||||
if (checkedList.contains(info.packageName)) {
|
if (checkedList.contains(info.packageName)) {
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
if (info.applicationInfo.category == ApplicationInfo.CATEGORY_GAME) {
|
if (!preferences.getBoolean("show_modules", false)) {
|
||||||
rmList.add(info);
|
if (info.applicationInfo.metaData != null && info.applicationInfo.metaData.containsKey("xposedmodule")) {
|
||||||
continue;
|
rmList.add(info);
|
||||||
|
continue;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
//noinspection deprecation
|
if (!preferences.getBoolean("show_games", false)) {
|
||||||
if ((info.applicationInfo.flags & ApplicationInfo.FLAG_IS_GAME) != 0) {
|
if (info.applicationInfo.category == ApplicationInfo.CATEGORY_GAME) {
|
||||||
rmList.add(info);
|
rmList.add(info);
|
||||||
continue;
|
continue;
|
||||||
|
}
|
||||||
|
//noinspection deprecation
|
||||||
|
if ((info.applicationInfo.flags & ApplicationInfo.FLAG_IS_GAME) != 0) {
|
||||||
|
rmList.add(info);
|
||||||
|
continue;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
if ((info.applicationInfo.flags & ApplicationInfo.FLAG_HAS_CODE) == 0 && !info.packageName.equals("android")) {
|
if ((info.applicationInfo.flags & ApplicationInfo.FLAG_HAS_CODE) == 0 && !info.packageName.equals("android")) {
|
||||||
rmList.add(info);
|
rmList.add(info);
|
||||||
|
|
@ -96,12 +104,6 @@ public class AppAdapter extends RecyclerView.Adapter<AppAdapter.ViewHolder> impl
|
||||||
}
|
}
|
||||||
if (!preferences.getBoolean("show_system_apps", false) && (info.applicationInfo.flags & ApplicationInfo.FLAG_SYSTEM) != 0) {
|
if (!preferences.getBoolean("show_system_apps", false) && (info.applicationInfo.flags & ApplicationInfo.FLAG_SYSTEM) != 0) {
|
||||||
rmList.add(info);
|
rmList.add(info);
|
||||||
continue;
|
|
||||||
}
|
|
||||||
if (this instanceof ScopeAdapter) {
|
|
||||||
if (info.packageName.equals(((ScopeAdapter) this).modulePackageName)) {
|
|
||||||
rmList.add(info);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (rmList.size() > 0) {
|
if (rmList.size() > 0) {
|
||||||
|
|
@ -145,6 +147,12 @@ public class AppAdapter extends RecyclerView.Adapter<AppAdapter.ViewHolder> impl
|
||||||
if (itemId == R.id.item_show_system) {
|
if (itemId == R.id.item_show_system) {
|
||||||
item.setChecked(!item.isChecked());
|
item.setChecked(!item.isChecked());
|
||||||
preferences.edit().putBoolean("show_system_apps", item.isChecked()).apply();
|
preferences.edit().putBoolean("show_system_apps", item.isChecked()).apply();
|
||||||
|
} else if (itemId == R.id.item_show_games) {
|
||||||
|
item.setChecked(!item.isChecked());
|
||||||
|
preferences.edit().putBoolean("show_games", item.isChecked()).apply();
|
||||||
|
} else if (itemId == R.id.item_show_modules) {
|
||||||
|
item.setChecked(!item.isChecked());
|
||||||
|
preferences.edit().putBoolean("show_modules", item.isChecked()).apply();
|
||||||
} else if (!AppHelper.onOptionsItemSelected(item, preferences)) {
|
} else if (!AppHelper.onOptionsItemSelected(item, preferences)) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
@ -155,6 +163,8 @@ public class AppAdapter extends RecyclerView.Adapter<AppAdapter.ViewHolder> impl
|
||||||
public void onCreateOptionsMenu(@NonNull Menu menu, @NonNull MenuInflater inflater) {
|
public void onCreateOptionsMenu(@NonNull Menu menu, @NonNull MenuInflater inflater) {
|
||||||
inflater.inflate(R.menu.menu_app_list, menu);
|
inflater.inflate(R.menu.menu_app_list, menu);
|
||||||
menu.findItem(R.id.item_show_system).setChecked(preferences.getBoolean("show_system_apps", false));
|
menu.findItem(R.id.item_show_system).setChecked(preferences.getBoolean("show_system_apps", false));
|
||||||
|
menu.findItem(R.id.item_show_games).setChecked(preferences.getBoolean("show_games", false));
|
||||||
|
menu.findItem(R.id.item_show_modules).setChecked(preferences.getBoolean("show_modules", false));
|
||||||
switch (preferences.getInt("list_sort", 0)) {
|
switch (preferences.getInt("list_sort", 0)) {
|
||||||
case 7:
|
case 7:
|
||||||
menu.findItem(R.id.item_sort_by_update_time_reverse).setChecked(true);
|
menu.findItem(R.id.item_sort_by_update_time_reverse).setChecked(true);
|
||||||
|
|
|
||||||
|
|
@ -8,6 +8,18 @@
|
||||||
app:actionViewClass="androidx.appcompat.widget.SearchView"
|
app:actionViewClass="androidx.appcompat.widget.SearchView"
|
||||||
app:showAsAction="ifRoom" />
|
app:showAsAction="ifRoom" />
|
||||||
|
|
||||||
|
<item
|
||||||
|
android:id="@+id/item_show_games"
|
||||||
|
android:checkable="true"
|
||||||
|
android:checked="true"
|
||||||
|
android:title="@string/menu_show_games" />
|
||||||
|
|
||||||
|
<item
|
||||||
|
android:id="@+id/item_show_modules"
|
||||||
|
android:checkable="true"
|
||||||
|
android:checked="true"
|
||||||
|
android:title="@string/menu_show_modules" />
|
||||||
|
|
||||||
<item
|
<item
|
||||||
android:id="@+id/item_show_system"
|
android:id="@+id/item_show_system"
|
||||||
android:checkable="true"
|
android:checkable="true"
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue