diff options
Diffstat (limited to 'core/java/android/widget/SuggestionsAdapter.java')
-rw-r--r-- | core/java/android/widget/SuggestionsAdapter.java | 33 |
1 files changed, 20 insertions, 13 deletions
diff --git a/core/java/android/widget/SuggestionsAdapter.java b/core/java/android/widget/SuggestionsAdapter.java index c8917e0..6349347 100644 --- a/core/java/android/widget/SuggestionsAdapter.java +++ b/core/java/android/widget/SuggestionsAdapter.java @@ -64,11 +64,13 @@ class SuggestionsAdapter extends ResourceCursorAdapter implements OnClickListene static final int REFINE_BY_ENTRY = 1; static final int REFINE_ALL = 2; - private SearchManager mSearchManager; - private SearchView mSearchView; - private SearchableInfo mSearchable; - private Context mProviderContext; - private WeakHashMap<String, Drawable.ConstantState> mOutsideDrawablesCache; + private final SearchManager mSearchManager; + private final SearchView mSearchView; + private final SearchableInfo mSearchable; + private final Context mProviderContext; + private final WeakHashMap<String, Drawable.ConstantState> mOutsideDrawablesCache; + private final int mCommitIconResId; + private boolean mClosed = false; private int mQueryRefinement = REFINE_BY_ENTRY; @@ -94,18 +96,18 @@ class SuggestionsAdapter extends ResourceCursorAdapter implements OnClickListene */ private static final long DELETE_KEY_POST_DELAY = 500L; - public SuggestionsAdapter(Context context, SearchView searchView, - SearchableInfo searchable, + public SuggestionsAdapter(Context context, SearchView searchView, SearchableInfo searchable, WeakHashMap<String, Drawable.ConstantState> outsideDrawablesCache) { - super(context, - com.android.internal.R.layout.search_dropdown_item_icons_2line, - null, // no initial cursor - true); // auto-requery + super(context, searchView.getSuggestionRowLayout(), null /* no initial cursor */, + true /* auto-requery */); + mSearchManager = (SearchManager) mContext.getSystemService(Context.SEARCH_SERVICE); mSearchView = searchView; mSearchable = searchable; + mCommitIconResId = searchView.getSuggestionCommitIconResId(); + // set up provider resources (gives us icons, etc.) - Context activityContext = mSearchable.getActivityContext(mContext); + final Context activityContext = mSearchable.getActivityContext(mContext); mProviderContext = mSearchable.getProviderContext(mContext, activityContext); mOutsideDrawablesCache = outsideDrawablesCache; @@ -279,8 +281,13 @@ class SuggestionsAdapter extends ResourceCursorAdapter implements OnClickListene */ @Override public View newView(Context context, Cursor cursor, ViewGroup parent) { - View v = super.newView(context, cursor, parent); + final View v = super.newView(context, cursor, parent); v.setTag(new ChildViewCache(v)); + + // Set up icon. + final ImageView iconRefine = (ImageView) v.findViewById(R.id.edit_query); + iconRefine.setImageResource(mCommitIconResId); + return v; } |