From c6e86392ffdfdc5dd111326ae9491f05c240b9e1 Mon Sep 17 00:00:00 2001 From: Peter Serwylo <peter@ivt.com.au> Date: Sun, 6 Jul 2014 00:28:26 +0930 Subject: [PATCH] Fix issue #51. Made SearchView stuff use appcompat-v7. Previously, it was using the native android.widget.SearchView. Now it uses the widget from appcompat. For good measure, I also made it so that the search button is always in the action bar, rather than being hidden behind a menu sometimes. --- res/menu/select_local_apps_activity.xml | 11 ++++++----- .../fdroid/fdroid/views/SelectLocalAppsActivity.java | 4 ++-- .../views/fragments/SelectLocalAppsFragment.java | 2 +- 3 files changed, 9 insertions(+), 8 deletions(-) diff --git a/res/menu/select_local_apps_activity.xml b/res/menu/select_local_apps_activity.xml index d44df3029..98a321135 100644 --- a/res/menu/select_local_apps_activity.xml +++ b/res/menu/select_local_apps_activity.xml @@ -1,15 +1,16 @@ -<menu xmlns:android="http://schemas.android.com/apk/res/android" > +<menu xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:app="http://schemas.android.com/apk/res-auto" > <item android:id="@+id/action_search" - android:actionViewClass="android.widget.SearchView" + app:actionViewClass="android.support.v7.widget.SearchView" + app:showAsAction="collapseActionView|always" android:icon="@android:drawable/ic_menu_search" - android:showAsAction="collapseActionView|ifRoom" android:title="@string/menu_search"/> <item android:id="@+id/action_settings" android:icon="@android:drawable/ic_menu_preferences" - android:showAsAction="never" - android:title="@string/menu_preferences"/> + android:title="@string/menu_preferences" + app:showAsAction="never"/> </menu> \ No newline at end of file diff --git a/src/org/fdroid/fdroid/views/SelectLocalAppsActivity.java b/src/org/fdroid/fdroid/views/SelectLocalAppsActivity.java index b438915ec..8d009aeab 100644 --- a/src/org/fdroid/fdroid/views/SelectLocalAppsActivity.java +++ b/src/org/fdroid/fdroid/views/SelectLocalAppsActivity.java @@ -5,11 +5,11 @@ import android.content.Intent; import android.os.Bundle; import android.support.v4.view.MenuItemCompat; import android.support.v7.app.ActionBarActivity; +import android.support.v7.widget.SearchView; import android.view.ActionMode; import android.view.Menu; import android.view.MenuInflater; import android.view.MenuItem; -import android.widget.SearchView; import org.fdroid.fdroid.FDroidApp; import org.fdroid.fdroid.PreferencesActivity; import org.fdroid.fdroid.R; @@ -41,7 +41,7 @@ public class SelectLocalAppsActivity extends ActionBarActivity { getMenuInflater().inflate(R.menu.select_local_apps_activity, menu); searchView = (SearchView) MenuItemCompat.getActionView(menu.findItem(R.id.action_search)); searchView.setOnQueryTextListener(selectLocalAppsFragment); - return true; + return super.onCreateOptionsMenu(menu); } @Override diff --git a/src/org/fdroid/fdroid/views/fragments/SelectLocalAppsFragment.java b/src/org/fdroid/fdroid/views/fragments/SelectLocalAppsFragment.java index 0429f09be..86abed345 100644 --- a/src/org/fdroid/fdroid/views/fragments/SelectLocalAppsFragment.java +++ b/src/org/fdroid/fdroid/views/fragments/SelectLocalAppsFragment.java @@ -23,13 +23,13 @@ import android.support.v4.app.ListFragment; import android.support.v4.app.LoaderManager; import android.support.v4.content.CursorLoader; import android.support.v4.content.Loader; +import android.support.v7.widget.SearchView.OnQueryTextListener; import android.text.TextUtils; import android.view.ActionMode; import android.view.View; import android.widget.ImageView; import android.widget.LinearLayout; import android.widget.ListView; -import android.widget.SearchView.OnQueryTextListener; import android.widget.SimpleCursorAdapter; import android.widget.SimpleCursorAdapter.ViewBinder; import android.widget.TextView;