diff options
| author | 2021-12-21 10:16:41 +0000 | |
|---|---|---|
| committer | 2021-12-21 10:16:41 +0000 | |
| commit | 3f1e934c8633f206ae9cea6a33adaff9254f77eb (patch) | |
| tree | 4756049994068f366bb23815b43e826efe3cc714 | |
| parent | c02266e2aa8ad47a60c0b72314670dc57329e9cb (diff) | |
| parent | 41a3197e7436c9c93949f7b296f75916fb7d2f9c (diff) | |
Merge "Allow customize icon of BannerMessagePreference before Android S"
| -rw-r--r-- | packages/SettingsLib/BannerMessagePreference/src/com/android/settingslib/widget/BannerMessagePreference.java | 29 |
1 files changed, 15 insertions, 14 deletions
diff --git a/packages/SettingsLib/BannerMessagePreference/src/com/android/settingslib/widget/BannerMessagePreference.java b/packages/SettingsLib/BannerMessagePreference/src/com/android/settingslib/widget/BannerMessagePreference.java index 3a70d657f62f..afeb24ad3b61 100644 --- a/packages/SettingsLib/BannerMessagePreference/src/com/android/settingslib/widget/BannerMessagePreference.java +++ b/packages/SettingsLib/BannerMessagePreference/src/com/android/settingslib/widget/BannerMessagePreference.java @@ -152,10 +152,22 @@ public class BannerMessagePreference extends Preference { mPositiveButtonInfo.mButton = (Button) holder.findViewById(R.id.banner_positive_btn); mNegativeButtonInfo.mButton = (Button) holder.findViewById(R.id.banner_negative_btn); + final Resources.Theme theme = context.getTheme(); + @ColorInt final int accentColor = + context.getResources().getColor(mAttentionLevel.getAccentColorResId(), theme); + + final ImageView iconView = (ImageView) holder.findViewById(R.id.banner_icon); + if (iconView != null) { + Drawable icon = getIcon(); + iconView.setImageDrawable( + icon == null + ? getContext().getDrawable(R.drawable.ic_warning) + : icon); + iconView.setColorFilter( + new PorterDuffColorFilter(accentColor, PorterDuff.Mode.SRC_IN)); + } + if (IS_AT_LEAST_S) { - final Resources.Theme theme = context.getTheme(); - @ColorInt final int accentColor = - context.getResources().getColor(mAttentionLevel.getAccentColorResId(), theme); @ColorInt final int backgroundColor = context.getResources().getColor( mAttentionLevel.getBackgroundColorResId(), theme); @@ -174,16 +186,6 @@ public class BannerMessagePreference extends Preference { subtitleView.setText(mSubtitle); subtitleView.setVisibility(mSubtitle == null ? View.GONE : View.VISIBLE); - final ImageView iconView = (ImageView) holder.findViewById(R.id.banner_icon); - if (iconView != null) { - Drawable icon = getIcon(); - iconView.setImageDrawable( - icon == null - ? getContext().getDrawable(R.drawable.ic_warning) - : icon); - iconView.setColorFilter( - new PorterDuffColorFilter(accentColor, PorterDuff.Mode.SRC_IN)); - } } else { holder.setDividerAllowedAbove(true); holder.setDividerAllowedBelow(true); @@ -323,7 +325,6 @@ public class BannerMessagePreference extends Preference { /** * Sets the attention level. This will update the color theme of the preference. */ - @RequiresApi(Build.VERSION_CODES.S) public BannerMessagePreference setAttentionLevel(AttentionLevel attentionLevel) { if (attentionLevel == mAttentionLevel) { return this; |