Trim search query when initializing installed app searcher.

Change-Id: I502185d4b497b2edac32e4a8368be76d13b68259
Fix: 62885439
Test: make RunSettingsRoboTests
This commit is contained in:
Fan Zhang
2017-06-27 12:47:06 -07:00
parent 2b0ea1c710
commit fbcf4e6e14
5 changed files with 43 additions and 38 deletions

View File

@@ -17,14 +17,10 @@
package com.android.settings.search;
import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import android.text.TextUtils;
import android.util.Log;
import android.view.Menu;
import android.view.MenuItem;
import com.android.settings.R;
import com.android.settings.applications.PackageManagerWrapperImpl;
import com.android.settings.dashboard.SiteMapManager;
@@ -45,14 +41,14 @@ public class SearchFeatureProviderImpl implements SearchFeatureProvider {
@Override
public DatabaseResultLoader getDatabaseSearchLoader(Context context, String query) {
return new DatabaseResultLoader(context, query, getSiteMapManager());
return new DatabaseResultLoader(context, cleanQuery(query), getSiteMapManager());
}
@Override
public InstalledAppResultLoader getInstalledAppSearchLoader(Context context, String query) {
return new InstalledAppResultLoader(
context, new PackageManagerWrapperImpl(context.getPackageManager()), query,
getSiteMapManager());
context, new PackageManagerWrapperImpl(context.getPackageManager()),
cleanQuery(query), getSiteMapManager());
}
@Override
@@ -88,4 +84,16 @@ public class SearchFeatureProviderImpl implements SearchFeatureProvider {
Log.d(TAG, "IndexDatabase() took " +
(System.currentTimeMillis() - indexStartTime) + " ms");
}
/**
* A generic method to make the query suitable for searching the database.
*
* @return the cleaned query string
*/
private String cleanQuery(String query) {
if (TextUtils.isEmpty(query)) {
return null;
}
return query.trim();
}
}