diff options
author | Sunny Goyal <sunnygoyal@google.com> | 2016-03-02 11:32:18 -0800 |
---|---|---|
committer | Sunny Goyal <sunnygoyal@google.com> | 2016-03-03 18:36:35 +0000 |
commit | 9e3fee1427c0baa38564e20a9f351d1a87c25761 (patch) | |
tree | 058e4ceaee54d3fa89a88d73b8a99a89e129080b /src/com/android/launcher3/allapps/AllAppsSearchBarController.java | |
parent | 5cc55a143a2ed35d6f2ac1fe57a4e8b3e26d47a0 (diff) | |
download | android_packages_apps_Trebuchet-9e3fee1427c0baa38564e20a9f351d1a87c25761.tar.gz android_packages_apps_Trebuchet-9e3fee1427c0baa38564e20a9f351d1a87c25761.tar.bz2 android_packages_apps_Trebuchet-9e3fee1427c0baa38564e20a9f351d1a87c25761.zip |
Starting market search whenever the search key is pressed
Bug: 27365428
Change-Id: I508cb35cd1aaab1eac6cf60014fa6f80592365ef
(cherry picked from commit 992a5f566e7f1b1fc8bd766f1fd00bee7ea2a634)
Diffstat (limited to 'src/com/android/launcher3/allapps/AllAppsSearchBarController.java')
-rw-r--r-- | src/com/android/launcher3/allapps/AllAppsSearchBarController.java | 34 |
1 files changed, 9 insertions, 25 deletions
diff --git a/src/com/android/launcher3/allapps/AllAppsSearchBarController.java b/src/com/android/launcher3/allapps/AllAppsSearchBarController.java index fdce3895f..f832a548f 100644 --- a/src/com/android/launcher3/allapps/AllAppsSearchBarController.java +++ b/src/com/android/launcher3/allapps/AllAppsSearchBarController.java @@ -28,11 +28,11 @@ import android.widget.TextView; import android.widget.TextView.OnEditorActionListener; import com.android.launcher3.ExtendedEditText; +import com.android.launcher3.Launcher; import com.android.launcher3.Utilities; import com.android.launcher3.util.ComponentKey; import java.util.ArrayList; -import java.util.List; /** * An interface to a search box that AllApps can command. @@ -40,9 +40,7 @@ import java.util.List; public abstract class AllAppsSearchBarController implements TextWatcher, OnEditorActionListener, ExtendedEditText.OnBackKeyListener { - private static final boolean ALLOW_SINGLE_APP_LAUNCH = true; - - protected AllAppsRecyclerView mAppsRecyclerView; + protected Launcher mLauncher; protected AlphabeticalAppsList mApps; protected Callbacks mCb; protected ExtendedEditText mInput; @@ -55,10 +53,10 @@ public abstract class AllAppsSearchBarController */ public final void initialize( AlphabeticalAppsList apps, ExtendedEditText input, - AllAppsRecyclerView recycleView, Callbacks cb) { + Launcher launcher, Callbacks cb) { mApps = apps; mCb = cb; - mAppsRecyclerView = recycleView; + mLauncher = launcher; mInput = input; mInput.addTextChangedListener(this); @@ -102,31 +100,17 @@ public abstract class AllAppsSearchBarController @Override public boolean onEditorAction(TextView v, int actionId, KeyEvent event) { - // Skip if we disallow app-launch-on-enter - if (!ALLOW_SINGLE_APP_LAUNCH) { - return false; - } // Skip if it's not the right action if (actionId != EditorInfo.IME_ACTION_SEARCH) { return false; } - // Skip if there are more than one icon - if (mApps.getNumFilteredApps() > 1) { + // Skip if the query is empty + String query = v.getText().toString(); + if (query.isEmpty()) { return false; } - // Otherwise, find the first icon, or fallback to the search-market-view and launch it - List<AlphabeticalAppsList.AdapterItem> items = mApps.getAdapterItems(); - for (int i = 0; i < items.size(); i++) { - AlphabeticalAppsList.AdapterItem item = items.get(i); - switch (item.viewType) { - case AllAppsGridAdapter.ICON_VIEW_TYPE: - case AllAppsGridAdapter.SEARCH_MARKET_VIEW_TYPE: - mAppsRecyclerView.getChildAt(i).performClick(); - mInputMethodManager.hideSoftInputFromWindow(mInput.getWindowToken(), 0); - return true; - } - } - return false; + return mLauncher.startActivitySafely( + v, AllAppsGridAdapter.createMarketSearchIntent(query), null); } @Override |