Show proper suggestion item hilite on selection.
With the new implementation of using a SuggestionItemView, we no longer need to draw a solid background for all items in the suggestion listview. Hence removing the code to draw a default white background, and make the item transparent so the listview-drawn selection hilite shows through.
This commit is contained in:
@@ -68,9 +68,6 @@ class SuggestionsAdapter extends ResourceCursorAdapter {
|
|||||||
private int mIconName2Col;
|
private int mIconName2Col;
|
||||||
private int mBackgroundColorCol;
|
private int mBackgroundColorCol;
|
||||||
|
|
||||||
// Cached item background color.
|
|
||||||
private int mDefaultBackgroundColor;
|
|
||||||
|
|
||||||
// This value is stored in SuggestionsAdapter by the SearchDialog to indicate whether
|
// This value is stored in SuggestionsAdapter by the SearchDialog to indicate whether
|
||||||
// a particular list item should be selected upon the next call to notifyDataSetChanged.
|
// a particular list item should be selected upon the next call to notifyDataSetChanged.
|
||||||
// This is used to indicate the index of the "More results..." list item so that when
|
// This is used to indicate the index of the "More results..." list item so that when
|
||||||
@@ -102,11 +99,6 @@ class SuggestionsAdapter extends ResourceCursorAdapter {
|
|||||||
Context activityContext = mSearchable.getActivityContext(mContext);
|
Context activityContext = mSearchable.getActivityContext(mContext);
|
||||||
mProviderContext = mSearchable.getProviderContext(mContext, activityContext);
|
mProviderContext = mSearchable.getProviderContext(mContext, activityContext);
|
||||||
|
|
||||||
TypedValue colorValue = new TypedValue();
|
|
||||||
mProviderContext.getTheme().resolveAttribute(
|
|
||||||
com.android.internal.R.attr.searchWidgetItemBackground, colorValue, true);
|
|
||||||
mDefaultBackgroundColor = mProviderContext.getResources().getColor(colorValue.resourceId);
|
|
||||||
|
|
||||||
mOutsideDrawablesCache = outsideDrawablesCache;
|
mOutsideDrawablesCache = outsideDrawablesCache;
|
||||||
mGlobalSearchMode = globalSearchMode;
|
mGlobalSearchMode = globalSearchMode;
|
||||||
|
|
||||||
@@ -303,9 +295,6 @@ class SuggestionsAdapter extends ResourceCursorAdapter {
|
|||||||
if (mBackgroundColorCol != -1) {
|
if (mBackgroundColorCol != -1) {
|
||||||
backgroundColor = cursor.getInt(mBackgroundColorCol);
|
backgroundColor = cursor.getInt(mBackgroundColorCol);
|
||||||
}
|
}
|
||||||
if (backgroundColor == 0) {
|
|
||||||
backgroundColor = mDefaultBackgroundColor;
|
|
||||||
}
|
|
||||||
((SuggestionItemView)view).setColor(backgroundColor);
|
((SuggestionItemView)view).setColor(backgroundColor);
|
||||||
|
|
||||||
final boolean isHtml = mFormatCol > 0 && "html".equals(cursor.getString(mFormatCol));
|
final boolean isHtml = mFormatCol > 0 && "html".equals(cursor.getString(mFormatCol));
|
||||||
@@ -524,6 +513,7 @@ class SuggestionsAdapter extends ResourceCursorAdapter {
|
|||||||
protected SuggestionItemView(Context context, Cursor cursor) {
|
protected SuggestionItemView(Context context, Cursor cursor) {
|
||||||
// Initialize ourselves
|
// Initialize ourselves
|
||||||
super(context);
|
super(context);
|
||||||
|
mBackgroundColor = 0; // transparent by default.
|
||||||
|
|
||||||
// For our layout use the default list item height from the current theme.
|
// For our layout use the default list item height from the current theme.
|
||||||
TypedValue lineHeight = new TypedValue();
|
TypedValue lineHeight = new TypedValue();
|
||||||
@@ -551,7 +541,7 @@ class SuggestionsAdapter extends ResourceCursorAdapter {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void dispatchDraw(Canvas canvas) {
|
public void dispatchDraw(Canvas canvas) {
|
||||||
if (!isPressed()) {
|
if (mBackgroundColor != 0 && !isPressed() && !isSelected()) {
|
||||||
canvas.drawColor(mBackgroundColor);
|
canvas.drawColor(mBackgroundColor);
|
||||||
}
|
}
|
||||||
super.dispatchDraw(canvas);
|
super.dispatchDraw(canvas);
|
||||||
|
|||||||
@@ -82,9 +82,7 @@
|
|||||||
|
|
||||||
<!-- Text color for urls in search suggestions, used by things like global search and the browser. @hide -->
|
<!-- Text color for urls in search suggestions, used by things like global search and the browser. @hide -->
|
||||||
<attr name="textColorSearchUrl" format="reference|color" />
|
<attr name="textColorSearchUrl" format="reference|color" />
|
||||||
<!-- Search widget result item background. -->
|
<!-- Search widget more corpus result item background. -->
|
||||||
<attr name="searchWidgetItemBackground" format="reference|color" />
|
|
||||||
<!-- Search widget expandable result item background. -->
|
|
||||||
<attr name="searchWidgetCorpusItemBackground" format="reference|color" />
|
<attr name="searchWidgetCorpusItemBackground" format="reference|color" />
|
||||||
|
|
||||||
<!-- Text color, typeface, size, and style for "large" text. Defaults to primary text color. -->
|
<!-- Text color, typeface, size, and style for "large" text. Defaults to primary text color. -->
|
||||||
|
|||||||
@@ -75,7 +75,6 @@
|
|||||||
|
|
||||||
<!-- For search-related UIs -->
|
<!-- For search-related UIs -->
|
||||||
<color name="search_url_text">#7fa87f</color>
|
<color name="search_url_text">#7fa87f</color>
|
||||||
<color name="search_widget_item_background">@android:color/white</color>
|
|
||||||
<color name="search_widget_corpus_item_background">@android:color/lighter_gray</color>
|
<color name="search_widget_corpus_item_background">@android:color/lighter_gray</color>
|
||||||
|
|
||||||
</resources>
|
</resources>
|
||||||
|
|||||||
@@ -185,7 +185,6 @@
|
|||||||
<item name="preferenceLayoutChild">@android:layout/preference_child</item>
|
<item name="preferenceLayoutChild">@android:layout/preference_child</item>
|
||||||
|
|
||||||
<!-- Search widget styles -->
|
<!-- Search widget styles -->
|
||||||
<item name="searchWidgetItemBackground">@android:color/search_widget_item_background</item>
|
|
||||||
<item name="searchWidgetCorpusItemBackground">@android:color/search_widget_corpus_item_background</item>
|
<item name="searchWidgetCorpusItemBackground">@android:color/search_widget_corpus_item_background</item>
|
||||||
</style>
|
</style>
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user