summaryrefslogtreecommitdiffstats
path: root/core
diff options
context:
space:
mode:
Diffstat (limited to 'core')
-rw-r--r--core/java/android/app/SuggestionsAdapter.java5
-rw-r--r--core/java/android/server/search/SearchDialogWrapper.java6
-rw-r--r--core/java/android/widget/AutoCompleteTextView.java9
3 files changed, 15 insertions, 5 deletions
diff --git a/core/java/android/app/SuggestionsAdapter.java b/core/java/android/app/SuggestionsAdapter.java
index 593b7b7..4cd35a4 100644
--- a/core/java/android/app/SuggestionsAdapter.java
+++ b/core/java/android/app/SuggestionsAdapter.java
@@ -27,6 +27,7 @@ import android.content.res.Resources;
import android.database.Cursor;
import android.graphics.drawable.ColorDrawable;
import android.graphics.drawable.Drawable;
+import android.graphics.drawable.DrawableContainer;
import android.graphics.drawable.StateListDrawable;
import android.net.Uri;
import android.os.Bundle;
@@ -359,6 +360,10 @@ class SuggestionsAdapter extends ResourceCursorAdapter {
newBg.addState(new int[]{android.R.attr.state_selected}, transparent);
newBg.addState(new int[]{android.R.attr.state_pressed}, transparent);
newBg.addState(new int[]{}, background);
+ // Workaround for the fact that StateListDrawable.getPadding(Rect) always returns
+ // true, and thus sets the padding of any view that has it as a background.
+ ((DrawableContainer.DrawableContainerState) newBg.getConstantState())
+ .setVariablePadding(true);
mBackgroundsCache.put(backgroundColor, newBg.getConstantState());
return newBg;
}
diff --git a/core/java/android/server/search/SearchDialogWrapper.java b/core/java/android/server/search/SearchDialogWrapper.java
index d3ef5de..b8a9875 100644
--- a/core/java/android/server/search/SearchDialogWrapper.java
+++ b/core/java/android/server/search/SearchDialogWrapper.java
@@ -190,6 +190,9 @@ implements DialogInterface.OnCancelListener, DialogInterface.OnDismissListener {
msgData.putBundle(KEY_APP_SEARCH_DATA, appSearchData);
msgData.putInt(KEY_IDENT, ident);
mSearchUiThread.sendMessage(msg);
+ // be a little more eager in setting this so isVisible will return the correct value if
+ // called immediately after startSearch
+ mVisible = true;
}
/**
@@ -199,6 +202,9 @@ implements DialogInterface.OnCancelListener, DialogInterface.OnDismissListener {
public void stopSearch() {
if (DBG) debug("stopSearch()");
mSearchUiThread.sendEmptyMessage(MSG_STOP_SEARCH);
+ // be a little more eager in setting this so isVisible will return the correct value if
+ // called immediately after stopSearch
+ mVisible = false;
}
/**
diff --git a/core/java/android/widget/AutoCompleteTextView.java b/core/java/android/widget/AutoCompleteTextView.java
index 4bc00de..47798a4 100644
--- a/core/java/android/widget/AutoCompleteTextView.java
+++ b/core/java/android/widget/AutoCompleteTextView.java
@@ -205,11 +205,10 @@ public class AutoCompleteTextView extends EditText implements Filter.FilterListe
* Private hook into the on click event, dispatched from {@link PassThroughClickListener}
*/
private void onClickImpl() {
- // if drop down should always visible, bring it back in front of the soft
- // keyboard when the user touches the text field
- if (mDropDownAlwaysVisible
- && mPopup.isShowing()
- && mPopup.getInputMethodMode() == PopupWindow.INPUT_METHOD_NOT_NEEDED) {
+ // If the dropdown is showing, bring it back in front of the soft
+ // keyboard when the user touches the text field.
+ if (mPopup.isShowing() &&
+ mPopup.getInputMethodMode() == PopupWindow.INPUT_METHOD_NOT_NEEDED) {
ensureImeVisible();
}
}