Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 968c3256 authored by Hyunyoung Song's avatar Hyunyoung Song Committed by Android (Google) Code Review
Browse files

Merge "Add entry and cursor location in GetSuggestionRequest" into tm-dev

parents b8736627 e395453b
Loading
Loading
Loading
Loading
+4 −2
Original line number Diff line number Diff line
@@ -100,12 +100,14 @@ public class AllAppsSearchBarController
    @Override
    public void afterTextChanged(final Editable s) {
        mQuery = s.toString();
        mInput.getSelectionStart();
        if (mQuery.isEmpty()) {
            mSearchAlgorithm.cancel(true);
            mCallback.clearSearchResult();
        } else {
            mSearchAlgorithm.cancel(false);
            mSearchAlgorithm.doSearch(mQuery, mTextConversions, mCallback);
            mSearchAlgorithm.doSearch(mQuery, mInput.getSelectionStart(), mTextConversions,
                    mCallback);
        }
    }

@@ -115,7 +117,7 @@ public class AllAppsSearchBarController
        }
        // If play store continues auto updating an app, we want to show partial result.
        mSearchAlgorithm.cancel(false);
        mSearchAlgorithm.doSearch(mQuery, mCallback);
        mSearchAlgorithm.doSearch(mQuery, mInput.getSelectionStart(), mCallback);
    }

    @Override
+1 −1
Original line number Diff line number Diff line
@@ -58,7 +58,7 @@ public class DefaultAppSearchAlgorithm implements SearchAlgorithm<AdapterItem> {
    }

    @Override
    public void doSearch(String query, SearchCallback<AdapterItem> callback) {
    public void doSearch(String query, int cursorLocation, SearchCallback<AdapterItem> callback) {
        mAppState.getModel().enqueueModelUpdateTask(new BaseModelUpdateTask() {
            @Override
            public void execute(LauncherAppState app, BgDataModel dataModel, AllAppsList apps) {
+4 −3
Original line number Diff line number Diff line
@@ -25,13 +25,14 @@ public interface SearchAlgorithm<T> {
    /**
     * Performs search and sends the result to {@link SearchCallback}.
     */
    void doSearch(String query, SearchCallback<T> callback);
    void doSearch(String query, int cursorLocation, SearchCallback<T> callback);

    /**
     * Performs search with {@code query} and the {@code suggestedQueries}/
     */
    default void doSearch(String query, String[] suggestedQueries, SearchCallback<T> callback) {
        doSearch(query, callback);
    default void doSearch(String query, int cursorLocation, String[] suggestedQueries,
            SearchCallback<T> callback) {
        doSearch(query, cursorLocation, callback);
    }

    /**
+2 −1
Original line number Diff line number Diff line
@@ -48,7 +48,8 @@ public final class SimpleWidgetsSearchAlgorithm implements SearchAlgorithm<Widge
    }

    @Override
    public void doSearch(String query, SearchCallback<WidgetsListBaseEntry> callback) {
    public void doSearch(String query, int cursorLocation,
            SearchCallback<WidgetsListBaseEntry> callback) {
        ArrayList<WidgetsListBaseEntry> result = getFilteredWidgets(mDataProvider, query);
        mResultHandler.post(() -> callback.onSearchResult(query, result));
    }
+1 −1
Original line number Diff line number Diff line
@@ -71,7 +71,7 @@ public class WidgetsSearchBarController implements TextWatcher,
        } else {
            mSearchAlgorithm.cancel(/* interruptActiveRequests= */ false);
            mSearchModeListener.enterSearchMode();
            mSearchAlgorithm.doSearch(mQuery, this);
            mSearchAlgorithm.doSearch(mQuery, mInput.getSelectionStart(), this);
            mCancelButton.setVisibility(VISIBLE);
        }
    }
Loading