From 503639db0473eb070241f1459765f895948ac793 Mon Sep 17 00:00:00 2001 From: Gus Prevas Date: Wed, 17 Oct 2018 16:18:43 -0400 Subject: [PATCH] Fixes volume dialog in dark mode. This change removes the caching of color values in VolumeDialogImpl such that the dialog will change its colors correctly when dark mode is toggled. Change-Id: I241edc284a33f60e60ec5e54f2e4d6bb0a0eadfd Fixes: 116860768 Test: manually --- .../com/android/systemui/volume/VolumeDialogImpl.java | 17 ++++++----------- 1 file changed, 6 insertions(+), 11 deletions(-) diff --git a/packages/SystemUI/src/com/android/systemui/volume/VolumeDialogImpl.java b/packages/SystemUI/src/com/android/systemui/volume/VolumeDialogImpl.java index 4810b0b91c10..a60e4167f60e 100644 --- a/packages/SystemUI/src/com/android/systemui/volume/VolumeDialogImpl.java +++ b/packages/SystemUI/src/com/android/systemui/volume/VolumeDialogImpl.java @@ -135,10 +135,6 @@ public class VolumeDialogImpl implements VolumeDialog { private final AccessibilityManagerWrapper mAccessibilityMgr; private final Object mSafetyWarningLock = new Object(); private final Accessibility mAccessibility = new Accessibility(); - private ColorStateList mActiveTint; - private int mActiveAlpha; - private ColorStateList mInactiveTint; - private int mInactiveAlpha; private boolean mShowing; private boolean mShowA11yStream; @@ -238,11 +234,6 @@ public class VolumeDialogImpl implements VolumeDialog { lp.gravity = ((FrameLayout.LayoutParams) mDialogView.getLayoutParams()).gravity; mWindow.setAttributes(lp); - mActiveTint = Utils.getColorAccent(mContext); - mActiveAlpha = Color.alpha(mActiveTint.getDefaultColor()); - mInactiveTint = Utils.getColorAttr(mContext, android.R.attr.colorForeground); - mInactiveAlpha = getAlphaAttr(android.R.attr.secondaryContentAlpha); - mDialogRowsView = mDialog.findViewById(R.id.volume_dialog_rows); mRinger = mDialog.findViewById(R.id.ringer); if (mRinger != null) { @@ -941,8 +932,12 @@ public class VolumeDialogImpl implements VolumeDialog { row.slider.requestFocus(); } boolean useActiveColoring = isActive && row.slider.isEnabled(); - final ColorStateList tint = useActiveColoring ? mActiveTint : mInactiveTint; - final int alpha = useActiveColoring ? mActiveAlpha : mInactiveAlpha; + final ColorStateList tint = useActiveColoring + ? Utils.getColorAccent(mContext) + : Utils.getColorAttr(mContext, android.R.attr.colorForeground); + final int alpha = useActiveColoring + ? Color.alpha(tint.getDefaultColor()) + : getAlphaAttr(android.R.attr.secondaryContentAlpha); if (tint == row.cachedTint) return; row.slider.setProgressTintList(tint); row.slider.setThumbTintList(tint); -- 2.11.0