Prevent refreshing app search results with empty query.

- Any change to the TextView text will cause mQuery to be set,
  which will cause a new search next time refreshSearchResult
  is called.  We should also be checking there if it is a valid
  search query before starting a new search.

Bug: 30606307
Change-Id: I08640c56199211f2aeea2386fcf699810853ab58
diff --git a/src/com/android/launcher3/allapps/AllAppsSearchBarController.java b/src/com/android/launcher3/allapps/AllAppsSearchBarController.java
index b965d74..9a48367 100644
--- a/src/com/android/launcher3/allapps/AllAppsSearchBarController.java
+++ b/src/com/android/launcher3/allapps/AllAppsSearchBarController.java
@@ -20,6 +20,7 @@
 import android.graphics.Rect;
 import android.net.Uri;
 import android.text.Editable;
+import android.text.TextUtils;
 import android.text.TextWatcher;
 import android.view.KeyEvent;
 import android.view.View;
@@ -102,7 +103,7 @@
     }
 
     protected void refreshSearchResult() {
-        if (mQuery == null) {
+        if (TextUtils.isEmpty(mQuery)) {
             return;
         }
         // If play store continues auto updating an app, we want to show partial result.
@@ -143,7 +144,6 @@
         unfocusSearchField();
         mCb.clearSearchResult();
         mInput.setText("");
-        // We need to reset this after we clear the input text
         mQuery = null;
         hideKeyboard();
     }