Refactor SearchAlgorithm and SearchCallback interface to work on generic search result type.

Test: Manually tested that 'All apps' search works fine
Bug: b/157286785
Change-Id: Id4b7fb133149e9211f871b46b47d5853ec0e0050
This commit is contained in:
Alina Zaidi
2021-02-16 13:43:36 +00:00
parent c7d72e55ec
commit 331140f665
5 changed files with 70 additions and 45 deletions
@@ -19,14 +19,17 @@ import android.content.Context;
import android.os.Handler;
import com.android.launcher3.LauncherAppState;
import com.android.launcher3.allapps.AllAppsGridAdapter.AdapterItem;
import com.android.launcher3.model.data.AppInfo;
import com.android.launcher3.search.SearchAlgorithm;
import com.android.launcher3.search.SearchCallback;
import java.text.Collator;
/**
* The default search implementation.
*/
public class DefaultAppSearchAlgorithm implements SearchAlgorithm {
public class DefaultAppSearchAlgorithm implements SearchAlgorithm<AdapterItem> {
protected final Handler mResultHandler;
private final AppsSearchPipeline mAppsSearchPipeline;
@@ -45,7 +48,7 @@ public class DefaultAppSearchAlgorithm implements SearchAlgorithm {
@Override
public void doSearch(final String query,
final AllAppsSearchBarController.Callbacks callback) {
final SearchCallback<AdapterItem> callback) {
mAppsSearchPipeline.query(query,
results -> mResultHandler.post(
() -> callback.onSearchResult(query, results)),