Replace search dialog with a search widget
SearchView is the recommended way to implement search UI. See https://developer.android.com/guide/topics/search/search-dialog.html#UsingSearchWidget
This commit is contained in:
parent
f0d72a3ec4
commit
e841d63ea9
@ -88,6 +88,10 @@
|
||||
android:name="org.fdroid.fdroid.data.InstalledAppProvider"
|
||||
android:exported="false"/>
|
||||
|
||||
<meta-data
|
||||
android:name="android.app.default_searchable"
|
||||
android:value=".SearchResults" />
|
||||
|
||||
<activity
|
||||
android:name=".FDroid"
|
||||
android:launchMode="singleTop"
|
||||
@ -292,10 +296,6 @@
|
||||
<data android:pathPattern="/.*/.*/FDROID/REPO" />
|
||||
<data android:pathPattern="/.*/.*/.*/FDROID/REPO" />
|
||||
</intent-filter>
|
||||
|
||||
<meta-data
|
||||
android:name="android.app.default_searchable"
|
||||
android:value=".SearchResults" />
|
||||
</activity>
|
||||
<activity
|
||||
android:name=".privileged.views.InstallConfirmActivity"
|
||||
|
@ -6,7 +6,8 @@
|
||||
android:id="@+id/action_search"
|
||||
android:icon="@drawable/ic_search_white"
|
||||
android:title="@string/menu_search"
|
||||
app:showAsAction="ifRoom"/>
|
||||
app:actionViewClass="android.support.v7.widget.SearchView"
|
||||
app:showAsAction="collapseActionView|ifRoom"/>
|
||||
<item
|
||||
android:id="@+id/action_update_repo"
|
||||
android:icon="@drawable/ic_refresh_white"
|
||||
|
@ -29,9 +29,11 @@ import android.content.res.Configuration;
|
||||
import android.database.ContentObserver;
|
||||
import android.net.Uri;
|
||||
import android.os.Bundle;
|
||||
import android.support.v4.view.MenuItemCompat;
|
||||
import android.support.v4.view.ViewPager;
|
||||
import android.support.v7.app.ActionBarActivity;
|
||||
import android.support.v7.app.AlertDialog;
|
||||
import android.support.v7.widget.SearchView;
|
||||
import android.text.TextUtils;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.Menu;
|
||||
@ -239,6 +241,14 @@ public class FDroid extends ActionBarActivity {
|
||||
MenuItem btItem = menu.findItem(R.id.action_bluetooth_apk);
|
||||
btItem.setVisible(false);
|
||||
}
|
||||
|
||||
SearchManager searchManager = (SearchManager) getSystemService(Context.SEARCH_SERVICE);
|
||||
MenuItem searchItem = menu.findItem(R.id.action_search);
|
||||
SearchView searchView = (SearchView) MenuItemCompat.getActionView(searchItem);
|
||||
searchView.setSearchableInfo(searchManager.getSearchableInfo(getComponentName()));
|
||||
// LayoutParams.MATCH_PARENT does not work, use a big value instead
|
||||
searchView.setMaxWidth(1000000);
|
||||
|
||||
return super.onCreateOptionsMenu(menu);
|
||||
}
|
||||
|
||||
@ -264,10 +274,6 @@ public class FDroid extends ActionBarActivity {
|
||||
startActivity(new Intent(this, SwapWorkflowActivity.class));
|
||||
return true;
|
||||
|
||||
case R.id.action_search:
|
||||
onSearchRequested();
|
||||
return true;
|
||||
|
||||
case R.id.action_bluetooth_apk:
|
||||
/*
|
||||
* If Bluetooth has not been enabled/turned on, then enabling
|
||||
|
Loading…
x
Reference in New Issue
Block a user