From: Tobias Brunner Date: Tue, 14 Aug 2012 09:50:03 +0000 (+0200) Subject: Enable search for certificate lists (via SearchView in ActionBar) X-Git-Tag: 5.0.1~194 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=c8d0c3b03d3e97a8194882d2ca6f9ac1d57f57be;p=thirdparty%2Fstrongswan.git Enable search for certificate lists (via SearchView in ActionBar) --- diff --git a/src/frontends/android/res/values-de/strings.xml b/src/frontends/android/res/values-de/strings.xml index 5207debcff..13a34b2910 100644 --- a/src/frontends/android/res/values-de/strings.xml +++ b/src/frontends/android/res/values-de/strings.xml @@ -22,6 +22,7 @@ strongSwan CA-Zertifikate neu laden Log anzeigen + Suchen Log diff --git a/src/frontends/android/res/values/strings.xml b/src/frontends/android/res/values/strings.xml index 8188db16ee..07dd8c269e 100644 --- a/src/frontends/android/res/values/strings.xml +++ b/src/frontends/android/res/values/strings.xml @@ -22,6 +22,7 @@ strongSwan Reload CA certificates View log + Search Log diff --git a/src/frontends/android/src/org/strongswan/android/data/TrustedCertificateEntry.java b/src/frontends/android/src/org/strongswan/android/data/TrustedCertificateEntry.java index bedf06f744..de7ea32b42 100644 --- a/src/frontends/android/src/org/strongswan/android/data/TrustedCertificateEntry.java +++ b/src/frontends/android/src/org/strongswan/android/data/TrustedCertificateEntry.java @@ -106,6 +106,20 @@ public class TrustedCertificateEntry implements Comparable> +public class TrustedCertificateListFragment extends ListFragment implements LoaderCallbacks>, OnQueryTextListener { private OnTrustedCertificateSelectedListener mListener; private TrustedCertificateAdapter mAdapter; @@ -54,6 +60,7 @@ public class TrustedCertificateListFragment extends ListFragment implements Load public void onActivityCreated(Bundle savedInstanceState) { super.onActivityCreated(savedInstanceState); + setHasOptionsMenu(true); setEmptyText(getString(R.string.no_certificates)); @@ -85,6 +92,32 @@ public class TrustedCertificateListFragment extends ListFragment implements Load } } + @Override + public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) + { + MenuItem item = menu.add(R.string.search); + item.setIcon(android.R.drawable.ic_menu_search); + item.setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM); + + SearchView sv = new SearchView(getActivity()); + sv.setOnQueryTextListener(this); + item.setActionView(sv); + } + + @Override + public boolean onQueryTextSubmit(String query) + { /* already handled when the text changes */ + return true; + } + + @Override + public boolean onQueryTextChange(String newText) + { + String search = TextUtils.isEmpty(newText) ? null : newText; + mAdapter.getFilter().filter(search); + return true; + } + @Override public Loader> onCreateLoader(int id, Bundle args) { /* we don't need the id as we have only one loader */