Merge change 7512 into donut
* changes:
Get rid of drawing hacks for search dialog suggestions
diff --git a/core/java/android/app/SearchDialog.java b/core/java/android/app/SearchDialog.java
index e70b570..bfd9923 100644
--- a/core/java/android/app/SearchDialog.java
+++ b/core/java/android/app/SearchDialog.java
@@ -28,7 +28,6 @@
import android.content.pm.PackageManager;
import android.content.pm.ResolveInfo;
import android.content.pm.PackageManager.NameNotFoundException;
-import android.content.res.Configuration;
import android.content.res.Resources;
import android.database.Cursor;
import android.graphics.drawable.Animatable;
@@ -322,16 +321,14 @@
if (!globalSearch && mSearchable == null) {
globalSearch = true;
mSearchable = searchManager.getSearchableInfo(componentName, globalSearch);
-
- // If we still get back null (i.e., there's not even a searchable info available
- // for global search), then really give up.
- if (mSearchable == null) {
- // Unfortunately, we can't log here. it would be logspam every time the user
- // clicks the "search" key on a non-search app.
- return false;
- }
}
-
+
+ // If there's not even a searchable info available for global search, then really give up.
+ if (mSearchable == null) {
+ Log.w(LOG_TAG, "No global search provider.");
+ return false;
+ }
+
mLaunchComponent = componentName;
mAppSearchData = appSearchData;
// Using globalSearch here is just an optimization, just calling
@@ -702,7 +699,10 @@
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (DBG) Log.d(LOG_TAG, "onKeyDown(" + keyCode + "," + event + ")");
-
+ if (mSearchable == null) {
+ return false;
+ }
+
// handle back key to go back to previous searchable, etc.
if (handleBackKey(keyCode, event)) {
return true;
@@ -738,6 +738,9 @@
if (DBG_LOG_TIMING) {
dbgLogTiming("onTextChanged()");
}
+ if (mSearchable == null) {
+ return;
+ }
updateWidgetState();
if (!mSearchAutoComplete.isPerformingCompletion()) {
// The user changed the query, remember it.
@@ -1563,6 +1566,9 @@
*/
@Override
public boolean onKeyPreIme(int keyCode, KeyEvent event) {
+ if (mSearchDialog.mSearchable == null) {
+ return false;
+ }
if (keyCode == KeyEvent.KEYCODE_BACK && event.getAction() == KeyEvent.ACTION_DOWN) {
if (mSearchDialog.backToPreviousComponent()) {
return true;