Merge "[SettingsLib] Update Utils.getColorAccent() and Utils.getColorError() to return ColorStateLists instead of colors."

This commit is contained in:
TreeHugger Robot
2018-05-21 10:23:17 +00:00
committed by Android (Google) Code Review
12 changed files with 23 additions and 22 deletions

View File

@@ -452,8 +452,7 @@ public class RunningProcessesView extends FrameLayout
final Context context = getContext(); final Context context = getContext();
mColorBar.setProgressTintList( mColorBar.setProgressTintList(
ColorStateList.valueOf(context.getColor(R.color.running_processes_system_ram))); ColorStateList.valueOf(context.getColor(R.color.running_processes_system_ram)));
mColorBar.setSecondaryProgressTintList( mColorBar.setSecondaryProgressTintList(Utils.getColorAccent(context));
ColorStateList.valueOf(Utils.getColorAccent(context)));
mColorBar.setSecondaryProgressTintMode(PorterDuff.Mode.SRC); mColorBar.setSecondaryProgressTintMode(PorterDuff.Mode.SRC);
mColorBar.setProgressBackgroundTintList( mColorBar.setProgressBackgroundTintList(
ColorStateList.valueOf(context.getColor(R.color.running_processes_free_ram))); ColorStateList.valueOf(context.getColor(R.color.running_processes_free_ram)));

View File

@@ -120,7 +120,7 @@ public class SuggestionAdapter extends RecyclerView.Adapter<DashboardItemHolder>
final Icon icon = suggestion.getIcon(); final Icon icon = suggestion.getIcon();
final Drawable drawable = mCache.getIcon(icon); final Drawable drawable = mCache.getIcon(icon);
if (drawable != null && (suggestion.getFlags() & Suggestion.FLAG_ICON_TINTABLE) != 0) { if (drawable != null && (suggestion.getFlags() & Suggestion.FLAG_ICON_TINTABLE) != 0) {
drawable.setTint(Utils.getColorAccent(mContext)); drawable.setTintList(Utils.getColorAccent(mContext));
} }
holder.icon.setImageDrawable(drawable); holder.icon.setImageDrawable(drawable);
holder.title.setText(suggestion.getTitle()); holder.title.setText(suggestion.getTitle());

View File

@@ -162,7 +162,7 @@ public abstract class StorageWizardBase extends Activity {
protected void setIcon(int resId) { protected void setIcon(int resId) {
final GlifLayout layout = getGlifLayout(); final GlifLayout layout = getGlifLayout();
final Drawable icon = getDrawable(resId).mutate(); final Drawable icon = getDrawable(resId).mutate();
icon.setTint(Utils.getColorAccent(layout.getContext())); icon.setTintList(Utils.getColorAccent(layout.getContext()));
layout.setIcon(icon); layout.setIcon(icon);
} }

View File

@@ -62,7 +62,7 @@ public class FingerprintLocationAnimationView extends View implements
R.fraction.fingerprint_sensor_location_fraction_x, 1, 1); R.fraction.fingerprint_sensor_location_fraction_x, 1, 1);
mFractionCenterY = getResources().getFraction( mFractionCenterY = getResources().getFraction(
R.fraction.fingerprint_sensor_location_fraction_y, 1, 1); R.fraction.fingerprint_sensor_location_fraction_y, 1, 1);
@ColorInt int colorAccent = Utils.getColorAccent(context); @ColorInt int colorAccent = Utils.getColorAccentDefaultColor(context);
mDotPaint.setAntiAlias(true); mDotPaint.setAntiAlias(true);
mPulsePaint.setAntiAlias(true); mPulsePaint.setAntiAlias(true);
mDotPaint.setColor(colorAccent); mDotPaint.setColor(colorAccent);

View File

@@ -363,7 +363,7 @@ public class BatteryHistoryChart extends View {
mThinLineWidth = (int)TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, mThinLineWidth = (int)TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP,
2, getResources().getDisplayMetrics()); 2, getResources().getDisplayMetrics());
int accentColor = Utils.getColorAccent(mContext); int accentColor = Utils.getColorAccentDefaultColor(mContext);
mBatteryBackgroundPaint.setColor(accentColor); mBatteryBackgroundPaint.setColor(accentColor);
mBatteryBackgroundPaint.setStyle(Paint.Style.FILL); mBatteryBackgroundPaint.setStyle(Paint.Style.FILL);
mBatteryGoodPaint.setARGB(128, 0, 128, 0); mBatteryGoodPaint.setARGB(128, 0, 128, 0);

View File

@@ -84,7 +84,7 @@ public class ZenModeSliceBuilder {
public static Slice getSlice(Context context) { public static Slice getSlice(Context context) {
final boolean isZenModeEnabled = isZenModeEnabled(context); final boolean isZenModeEnabled = isZenModeEnabled(context);
final CharSequence title = context.getText(R.string.zen_mode_settings_title); final CharSequence title = context.getText(R.string.zen_mode_settings_title);
@ColorInt final int color = Utils.getColorAccent(context); @ColorInt final int color = Utils.getColorAccentDefaultColor(context);
final PendingIntent toggleAction = getBroadcastIntent(context); final PendingIntent toggleAction = getBroadcastIntent(context);
final PendingIntent primaryAction = getPrimaryAction(context); final PendingIntent primaryAction = getPrimaryAction(context);
final SliceAction primarySliceAction = new SliceAction(primaryAction, final SliceAction primarySliceAction = new SliceAction(primaryAction,

View File

@@ -238,7 +238,7 @@ public class SliceBuilderUtils {
final PendingIntent contentIntent = getContentPendingIntent(context, sliceData); final PendingIntent contentIntent = getContentPendingIntent(context, sliceData);
final IconCompat icon = IconCompat.createWithResource(context, sliceData.getIconResource()); final IconCompat icon = IconCompat.createWithResource(context, sliceData.getIconResource());
final CharSequence subtitleText = getSubtitleText(context, controller, sliceData); final CharSequence subtitleText = getSubtitleText(context, controller, sliceData);
@ColorInt final int color = Utils.getColorAccent(context); @ColorInt final int color = Utils.getColorAccentDefaultColor(context);
final TogglePreferenceController toggleController = final TogglePreferenceController toggleController =
(TogglePreferenceController) controller; (TogglePreferenceController) controller;
final SliceAction sliceAction = getToggleAction(context, sliceData, final SliceAction sliceAction = getToggleAction(context, sliceData,
@@ -262,7 +262,7 @@ public class SliceBuilderUtils {
final PendingIntent contentIntent = getContentPendingIntent(context, sliceData); final PendingIntent contentIntent = getContentPendingIntent(context, sliceData);
final IconCompat icon = IconCompat.createWithResource(context, sliceData.getIconResource()); final IconCompat icon = IconCompat.createWithResource(context, sliceData.getIconResource());
final CharSequence subtitleText = getSubtitleText(context, controller, sliceData); final CharSequence subtitleText = getSubtitleText(context, controller, sliceData);
@ColorInt final int color = Utils.getColorAccent(context); @ColorInt final int color = Utils.getColorAccentDefaultColor(context);
final List<String> keywords = buildSliceKeywords(sliceData); final List<String> keywords = buildSliceKeywords(sliceData);
return new ListBuilder(context, sliceData.getUri(), ListBuilder.INFINITY) return new ListBuilder(context, sliceData.getUri(), ListBuilder.INFINITY)
@@ -282,7 +282,7 @@ public class SliceBuilderUtils {
final PendingIntent actionIntent = getSliderAction(context, sliceData); final PendingIntent actionIntent = getSliderAction(context, sliceData);
final PendingIntent contentIntent = getContentPendingIntent(context, sliceData); final PendingIntent contentIntent = getContentPendingIntent(context, sliceData);
final IconCompat icon = IconCompat.createWithResource(context, sliceData.getIconResource()); final IconCompat icon = IconCompat.createWithResource(context, sliceData.getIconResource());
@ColorInt final int color = Utils.getColorAccent(context); @ColorInt final int color = Utils.getColorAccentDefaultColor(context);
final SliceAction primaryAction = new SliceAction(contentIntent, icon, final SliceAction primaryAction = new SliceAction(contentIntent, icon,
sliceData.getTitle()); sliceData.getTitle());
final List<String> keywords = buildSliceKeywords(sliceData); final List<String> keywords = buildSliceKeywords(sliceData);
@@ -359,7 +359,7 @@ public class SliceBuilderUtils {
BasePreferenceController controller) { BasePreferenceController controller) {
final String title = data.getTitle(); final String title = data.getTitle();
final List<String> keywords = buildSliceKeywords(data); final List<String> keywords = buildSliceKeywords(data);
@ColorInt final int color = Utils.getColorAccent(context); @ColorInt final int color = Utils.getColorAccentDefaultColor(context);
final String summary; final String summary;
final SliceAction primaryAction; final SliceAction primaryAction;
final IconCompat icon = IconCompat.createWithResource(context, data.getIconResource()); final IconCompat icon = IconCompat.createWithResource(context, data.getIconResource());

View File

@@ -122,7 +122,7 @@ public class DonutView extends View {
: Paint.BIDI_RTL; : Paint.BIDI_RTL;
mTextPaint = new TextPaint(); mTextPaint = new TextPaint();
mTextPaint.setColor(Utils.getColorAccent(getContext())); mTextPaint.setColor(Utils.getColorAccentDefaultColor(getContext()));
mTextPaint.setAntiAlias(true); mTextPaint.setAntiAlias(true);
mTextPaint.setTextSize( mTextPaint.setTextSize(
resources.getDimension(R.dimen.storage_donut_view_label_text_size)); resources.getDimension(R.dimen.storage_donut_view_label_text_size));
@@ -130,7 +130,7 @@ public class DonutView extends View {
mTextPaint.setBidiFlags(bidiFlags); mTextPaint.setBidiFlags(bidiFlags);
mBigNumberPaint = new TextPaint(); mBigNumberPaint = new TextPaint();
mBigNumberPaint.setColor(Utils.getColorAccent(getContext())); mBigNumberPaint.setColor(Utils.getColorAccentDefaultColor(getContext()));
mBigNumberPaint.setAntiAlias(true); mBigNumberPaint.setAntiAlias(true);
mBigNumberPaint.setTextSize( mBigNumberPaint.setTextSize(
resources.getDimension(R.dimen.storage_donut_view_percent_text_size)); resources.getDimension(R.dimen.storage_donut_view_percent_text_size));

View File

@@ -87,7 +87,7 @@ public class WifiSliceBuilder {
R.drawable.ic_settings_wireless); R.drawable.ic_settings_wireless);
final String title = context.getString(R.string.wifi_settings); final String title = context.getString(R.string.wifi_settings);
final CharSequence summary = getSummary(context); final CharSequence summary = getSummary(context);
@ColorInt final int color = Utils.getColorAccent(context); @ColorInt final int color = Utils.getColorAccentDefaultColor(context);
final PendingIntent toggleAction = getBroadcastIntent(context); final PendingIntent toggleAction = getBroadcastIntent(context);
final PendingIntent primaryAction = getPrimaryAction(context); final PendingIntent primaryAction = getPrimaryAction(context);
final SliceAction primarySliceAction = new SliceAction(primaryAction, icon, title); final SliceAction primarySliceAction = new SliceAction(primaryAction, icon, title);

View File

@@ -406,7 +406,7 @@ public class WifiDetailPreferenceController extends AbstractPreferenceController
mRssiSignalLevel = signalLevel; mRssiSignalLevel = signalLevel;
Drawable wifiIcon = mIconInjector.getIcon(mRssiSignalLevel); Drawable wifiIcon = mIconInjector.getIcon(mRssiSignalLevel);
wifiIcon.setTint(Utils.getColorAccent(mContext)); wifiIcon.setTintList(Utils.getColorAccent(mContext));
mEntityHeaderController.setIcon(wifiIcon).done(mFragment.getActivity(), true /* rebind */); mEntityHeaderController.setIcon(wifiIcon).done(mFragment.getActivity(), true /* rebind */);
Drawable wifiIconDark = wifiIcon.getConstantState().newDrawable().mutate(); Drawable wifiIconDark = wifiIcon.getConstantState().newDrawable().mutate();

View File

@@ -29,6 +29,7 @@ import android.app.PendingIntent;
import android.content.Context; import android.content.Context;
import android.content.res.Resources; import android.content.res.Resources;
import android.content.res.TypedArray; import android.content.res.TypedArray;
import android.content.res.ColorStateList;
import android.graphics.drawable.Drawable; import android.graphics.drawable.Drawable;
import android.graphics.drawable.Icon; import android.graphics.drawable.Icon;
import android.service.settings.suggestions.Suggestion; import android.service.settings.suggestions.Suggestion;
@@ -47,6 +48,7 @@ import com.android.settings.testutils.SettingsRobolectricTestRunner;
import com.android.settings.testutils.shadow.ShadowCardView; import com.android.settings.testutils.shadow.ShadowCardView;
import com.android.settingslib.suggestions.SuggestionControllerMixin; import com.android.settingslib.suggestions.SuggestionControllerMixin;
import com.android.settingslib.utils.IconCache; import com.android.settingslib.utils.IconCache;
import com.android.settingslib.Utils;
import org.junit.Before; import org.junit.Before;
import org.junit.Test; import org.junit.Test;
@@ -282,13 +284,13 @@ public class SuggestionAdapterTest {
when(cache.getIcon(icon)).thenReturn(drawable); when(cache.getIcon(icon)).thenReturn(drawable);
ReflectionHelpers.setField(mSuggestionAdapter, "mCache", cache); ReflectionHelpers.setField(mSuggestionAdapter, "mCache", cache);
TypedArray typedArray = mock(TypedArray.class); TypedArray typedArray = mock(TypedArray.class);
final int colorAccent = 1234; final ColorStateList colorAccentState = Utils.getColorAccent(mContext);
when(mActivity.obtainStyledAttributes(any())).thenReturn(typedArray); when(mActivity.obtainStyledAttributes(any())).thenReturn(typedArray);
when(typedArray.getColor(anyInt(), anyInt())).thenReturn(colorAccent); when(typedArray.getColorStateList(anyInt())).thenReturn(colorAccentState);
mSuggestionAdapter.onBindViewHolder(mSuggestionHolder, 0); mSuggestionAdapter.onBindViewHolder(mSuggestionHolder, 0);
verify(drawable).setTint(colorAccent); verify(drawable).setTintList(colorAccentState);
} }
@Test @Test

View File

@@ -75,7 +75,7 @@ public class SliceTester {
final SliceItem colorItem = SliceQuery.findSubtype(slice, FORMAT_INT, SUBTYPE_COLOR); final SliceItem colorItem = SliceQuery.findSubtype(slice, FORMAT_INT, SUBTYPE_COLOR);
final int color = colorItem.getInt(); final int color = colorItem.getInt();
assertThat(color).isEqualTo(Utils.getColorAccent(context)); assertThat(color).isEqualTo(Utils.getColorAccentDefaultColor(context));
final List<SliceAction> toggles = metadata.getToggles(); final List<SliceAction> toggles = metadata.getToggles();
assertThat(toggles).isEmpty(); assertThat(toggles).isEmpty();
@@ -105,7 +105,7 @@ public class SliceTester {
final SliceItem colorItem = SliceQuery.findSubtype(slice, FORMAT_INT, SUBTYPE_COLOR); final SliceItem colorItem = SliceQuery.findSubtype(slice, FORMAT_INT, SUBTYPE_COLOR);
final int color = colorItem.getInt(); final int color = colorItem.getInt();
assertThat(color).isEqualTo(Utils.getColorAccent(context)); assertThat(color).isEqualTo(Utils.getColorAccentDefaultColor(context));
final List<SliceAction> toggles = metadata.getToggles(); final List<SliceAction> toggles = metadata.getToggles();
assertThat(toggles).hasSize(1); assertThat(toggles).hasSize(1);
@@ -148,7 +148,7 @@ public class SliceTester {
final SliceItem colorItem = SliceQuery.findSubtype(slice, FORMAT_INT, SUBTYPE_COLOR); final SliceItem colorItem = SliceQuery.findSubtype(slice, FORMAT_INT, SUBTYPE_COLOR);
final int color = colorItem.getInt(); final int color = colorItem.getInt();
assertThat(color).isEqualTo(Utils.getColorAccent(context)); assertThat(color).isEqualTo(Utils.getColorAccentDefaultColor(context));
final IconCompat expectedToggleIcon = IconCompat.createWithResource(context, final IconCompat expectedToggleIcon = IconCompat.createWithResource(context,
sliceData.getIconResource()); sliceData.getIconResource());
@@ -185,7 +185,7 @@ public class SliceTester {
final SliceItem colorItem = SliceQuery.findSubtype(slice, FORMAT_INT, SUBTYPE_COLOR); final SliceItem colorItem = SliceQuery.findSubtype(slice, FORMAT_INT, SUBTYPE_COLOR);
final int color = colorItem.getInt(); final int color = colorItem.getInt();
assertThat(color).isEqualTo(Utils.getColorAccent(context)); assertThat(color).isEqualTo(Utils.getColorAccentDefaultColor(context));
final List<SliceAction> toggles = metadata.getToggles(); final List<SliceAction> toggles = metadata.getToggles();
assertThat(toggles).isEmpty(); assertThat(toggles).isEmpty();