diff options
author | Lucas Dupin <dupin@google.com> | 2021-02-09 17:57:44 -0800 |
---|---|---|
committer | Lucas Dupin <dupin@google.com> | 2021-02-10 11:46:24 -0800 |
commit | 76492fbb86347cd7fe08437afc3f8710cbba26f2 (patch) | |
tree | b69412cded3139c3de2d00bba280c68b1ebf513e /packages/SystemUI/src/com/android/systemui/BatteryMeterView.java | |
parent | 8319d597691de39f46e486c6b6b45433d02065eb (diff) |
Read battery and icon colors from theme
QuickStatusBarHeader doesn't listen for dark events, so it should be
reading text colors from the default theme instead.
Test: change to dark theme, change to light theme
Test: change battery level via adb
Fixes: 179685319
Change-Id: I35f59af58c501c6b6f204be31750b10d73158b71
Diffstat (limited to 'packages/SystemUI/src/com/android/systemui/BatteryMeterView.java')
-rw-r--r-- | packages/SystemUI/src/com/android/systemui/BatteryMeterView.java | 47 |
1 files changed, 11 insertions, 36 deletions
diff --git a/packages/SystemUI/src/com/android/systemui/BatteryMeterView.java b/packages/SystemUI/src/com/android/systemui/BatteryMeterView.java index caaee5fd3f37..176562799838 100644 --- a/packages/SystemUI/src/com/android/systemui/BatteryMeterView.java +++ b/packages/SystemUI/src/com/android/systemui/BatteryMeterView.java @@ -49,7 +49,6 @@ import android.widget.TextView; import androidx.annotation.StyleRes; -import com.android.settingslib.Utils; import com.android.settingslib.graph.ThemedBatteryDrawable; import com.android.systemui.broadcast.BroadcastDispatcher; import com.android.systemui.plugins.DarkIconDispatcher; @@ -105,11 +104,6 @@ public class BatteryMeterView extends LinearLayout implements private DualToneHandler mDualToneHandler; private int mUser; - /** - * Whether we should use colors that adapt based on wallpaper/the scrim behind quick settings. - */ - private boolean mUseWallpaperTextColors; - private int mNonAdaptedSingleToneColor; private int mNonAdaptedForegroundColor; private int mNonAdaptedBackgroundColor; @@ -242,31 +236,6 @@ public class BatteryMeterView extends LinearLayout implements mIsSubscribedForTunerUpdates = false; } - /** - * Sets whether the battery meter view uses the wallpaperTextColor. If we're not using it, we'll - * revert back to dark-mode-based/tinted colors. - * - * @param shouldUseWallpaperTextColor whether we should use wallpaperTextColor for all - * components - */ - public void useWallpaperTextColor(boolean shouldUseWallpaperTextColor) { - if (shouldUseWallpaperTextColor == mUseWallpaperTextColors) { - return; - } - - mUseWallpaperTextColors = shouldUseWallpaperTextColor; - - if (mUseWallpaperTextColors) { - updateColors( - Utils.getColorAttrDefaultColor(mContext, R.attr.wallpaperTextColor), - Utils.getColorAttrDefaultColor(mContext, R.attr.wallpaperTextColorSecondary), - Utils.getColorAttrDefaultColor(mContext, R.attr.wallpaperTextColor)); - } else { - updateColors(mNonAdaptedForegroundColor, mNonAdaptedBackgroundColor, - mNonAdaptedSingleToneColor); - } - } - public void setColorsFromContext(Context context) { if (context == null) { return; @@ -476,13 +445,19 @@ public class BatteryMeterView extends LinearLayout implements mNonAdaptedForegroundColor = mDualToneHandler.getFillColor(intensity); mNonAdaptedBackgroundColor = mDualToneHandler.getBackgroundColor(intensity); - if (!mUseWallpaperTextColors) { - updateColors(mNonAdaptedForegroundColor, mNonAdaptedBackgroundColor, - mNonAdaptedSingleToneColor); - } + updateColors(mNonAdaptedForegroundColor, mNonAdaptedBackgroundColor, + mNonAdaptedSingleToneColor); } - private void updateColors(int foregroundColor, int backgroundColor, int singleToneColor) { + /** + * Sets icon and text colors. This will be overridden by {@code onDarkChanged} events, + * if registered. + * + * @param foregroundColor + * @param backgroundColor + * @param singleToneColor + */ + public void updateColors(int foregroundColor, int backgroundColor, int singleToneColor) { mDrawable.setColors(foregroundColor, backgroundColor, singleToneColor); mTextColor = singleToneColor; if (mBatteryPercentView != null) { |