Commit 50fc6515 authored by Tomasz Wiszkowski's avatar Tomasz Wiszkowski Committed by Commit Bot

Update Suggestion Fallback icon color for BaseSuggestionView.

This change ensures suggestions using BaseSuggestionView are using the
light gray color as a tint color for suggestion fallback icons.

Bug: 1027694
Change-Id: I073c019a57180843ce703abff16828ce9db74680
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1935029Reviewed-by: default avatarTed Choc <tedchoc@chromium.org>
Commit-Queue: Ender <ender@google.com>
Cr-Commit-Position: refs/heads/master@{#718913}
parent 10af5a87
...@@ -4,9 +4,12 @@ ...@@ -4,9 +4,12 @@
package org.chromium.chrome.browser.omnibox.suggestions.base; package org.chromium.chrome.browser.omnibox.suggestions.base;
import android.content.res.ColorStateList;
import android.content.res.Resources; import android.content.res.Resources;
import android.support.annotation.CallSuper; import android.support.annotation.CallSuper;
import android.support.annotation.ColorRes;
import android.support.v4.view.ViewCompat; import android.support.v4.view.ViewCompat;
import android.support.v7.content.res.AppCompatResources;
import android.view.View; import android.view.View;
import android.widget.ImageView; import android.widget.ImageView;
...@@ -76,19 +79,23 @@ public class BaseSuggestionViewBinder ...@@ -76,19 +79,23 @@ public class BaseSuggestionViewBinder
rciv.setRoundedCorners(radius, radius, radius, radius); rciv.setRoundedCorners(radius, radius, radius, radius);
} }
updateIcon(view, sds, isDarkMode(model)); @ColorRes
int tint = isDarkMode(model) ? R.color.default_icon_color_secondary_list
: R.color.white_mode_tint;
updateIcon(view, sds, tint);
} }
/** Update attributes of decorated suggestion icon. */ /** Update attributes of decorated suggestion icon. */
private static void updateActionIcon(PropertyModel model, BaseSuggestionView baseView) { private static void updateActionIcon(PropertyModel model, BaseSuggestionView baseView) {
final ImageView view = baseView.getActionImageView(); final ImageView view = baseView.getActionImageView();
final SuggestionDrawableState sds = model.get(BaseSuggestionViewProperties.ACTION_ICON); final SuggestionDrawableState sds = model.get(BaseSuggestionViewProperties.ACTION_ICON);
updateIcon(view, sds, isDarkMode(model)); updateIcon(view, sds, ChromeColors.getIconTintRes(!isDarkMode(model)));
} }
/** Update image view using supplied drawable state object */ /** Update image view using supplied drawable state object */
private static void updateIcon( private static void updateIcon(
ImageView view, SuggestionDrawableState sds, boolean useDarkColors) { ImageView view, SuggestionDrawableState sds, @ColorRes int tintRes) {
final Resources res = view.getContext().getResources(); final Resources res = view.getContext().getResources();
view.setVisibility(sds == null ? View.GONE : View.VISIBLE); view.setVisibility(sds == null ? View.GONE : View.VISIBLE);
...@@ -98,10 +105,12 @@ public class BaseSuggestionViewBinder ...@@ -98,10 +105,12 @@ public class BaseSuggestionViewBinder
return; return;
} }
view.setImageDrawable(sds.drawable); ColorStateList tint = null;
if (sds.allowTint) { if (sds.allowTint) {
ApiCompatibilityUtils.setImageTintList( tint = AppCompatResources.getColorStateList(view.getContext(), tintRes);
view, ChromeColors.getIconTint(view.getContext(), !useDarkColors));
} }
view.setImageDrawable(sds.drawable);
ApiCompatibilityUtils.setImageTintList(view, tint);
} }
} }
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment