diff --git a/app/src/main/java/eu/faircode/email/BoundaryCallbackMessages.java b/app/src/main/java/eu/faircode/email/BoundaryCallbackMessages.java index d34406c892..47bcbe7250 100644 --- a/app/src/main/java/eu/faircode/email/BoundaryCallbackMessages.java +++ b/app/src/main/java/eu/faircode/email/BoundaryCallbackMessages.java @@ -261,8 +261,10 @@ public class BoundaryCallbackMessages extends PagedList.BoundaryCallback accounts) { + SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(getContext()); + boolean search_text = prefs.getBoolean("search_text", true); + PopupMenuLifecycle popupMenu = new PopupMenuLifecycle(getContext(), getViewLifecycleOwner(), fabSearch); - popupMenu.getMenu().add(Menu.NONE, 0, 0, R.string.title_search_server).setEnabled(false); + popupMenu.getMenu().add(Menu.NONE, 0, 0, R.string.title_search_server) + .setEnabled(false); + popupMenu.getMenu().add(Menu.NONE, 1, 1, R.string.title_search_text) + .setCheckable(true).setChecked(search_text); - int order = 1; + int order = 2; for (EntityAccount account : accounts) - popupMenu.getMenu().add(Menu.NONE, 0, order++, account.name) + popupMenu.getMenu().add(Menu.NONE, 2, order++, account.name) .setIntent(new Intent().putExtra("account", account.id)); popupMenu.setOnMenuItemClickListener(new PopupMenu.OnMenuItemClickListener() { @Override public boolean onMenuItemClick(MenuItem target) { + if (target.getItemId() == 1) { + SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(getContext()); + boolean search_text = prefs.getBoolean("search_text", true); + prefs.edit().putBoolean("search_text", !search_text).apply(); + return true; + } + Intent intent = target.getIntent(); if (intent == null) return false; diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 3d44e33603..e5928a9be7 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -733,6 +733,7 @@ Search Search on server + Search in text Search in Sort on