From 77bb25af3dbf34b6c88549ae931b069a788316fc Mon Sep 17 00:00:00 2001 From: John Spurlock Date: Mon, 11 May 2015 12:12:07 -0400 Subject: [PATCH] Volume: Separate tint colors for active vs inactive sliders. Bug: 20889746 Change-Id: I98f6a0eab8f2db41ea7e1ba8e141752ef774de9e --- packages/SystemUI/res/layout/volume_dialog_row.xml | 4 +--- packages/SystemUI/res/values/colors.xml | 1 + .../src/com/android/systemui/volume/VolumeDialog.java | 11 +++++++++++ 3 files changed, 13 insertions(+), 3 deletions(-) diff --git a/packages/SystemUI/res/layout/volume_dialog_row.xml b/packages/SystemUI/res/layout/volume_dialog_row.xml index 53ae61bca438f..d12bf5db3fb29 100644 --- a/packages/SystemUI/res/layout/volume_dialog_row.xml +++ b/packages/SystemUI/res/layout/volume_dialog_row.xml @@ -50,9 +50,7 @@ android:layout_toEndOf="@id/volume_row_icon" android:layout_toStartOf="@+id/volume_settings_button" android:paddingEnd="8dp" - android:paddingStart="8dp" - android:progressTint="@android:color/white" - android:thumbTint="@android:color/white" /> + android:paddingStart="8dp" /> #ff009688 #ffffffff #7fffffff + #FFB0BEC5 diff --git a/packages/SystemUI/src/com/android/systemui/volume/VolumeDialog.java b/packages/SystemUI/src/com/android/systemui/volume/VolumeDialog.java index 1e34663769d66..4bc45dfddf663 100644 --- a/packages/SystemUI/src/com/android/systemui/volume/VolumeDialog.java +++ b/packages/SystemUI/src/com/android/systemui/volume/VolumeDialog.java @@ -26,6 +26,7 @@ import android.annotation.SuppressLint; import android.app.Dialog; import android.app.KeyguardManager; import android.content.Context; +import android.content.res.ColorStateList; import android.content.res.Resources; import android.graphics.Color; import android.graphics.PixelFormat; @@ -107,6 +108,8 @@ public class VolumeDialog { private final LayoutTransition mLayoutTransition; private final Object mSafetyWarningLock = new Object(); private final Accessibility mAccessibility = new Accessibility(); + private final ColorStateList mActiveSliderTint; + private final ColorStateList mInactiveSliderTint; private boolean mShowing; private boolean mExpanded; @@ -152,6 +155,8 @@ public class VolumeDialog { lp.gravity = Gravity.TOP; window.setAttributes(lp); + mActiveSliderTint = loadColorStateList(R.color.system_accent_color); + mInactiveSliderTint = loadColorStateList(R.color.volume_slider_inactive); mDialog.setContentView(R.layout.volume_dialog); mDialogView = (ViewGroup) mDialog.findViewById(R.id.volume_dialog); mDialogContentView = (ViewGroup) mDialog.findViewById(R.id.volume_dialog_content); @@ -190,6 +195,10 @@ public class VolumeDialog { controller.getState(); } + private ColorStateList loadColorStateList(int colorResId) { + return ColorStateList.valueOf(mContext.getColor(colorResId)); + } + private void updateWindowWidthH() { final ViewGroup.LayoutParams lp = mDialogView.getLayoutParams(); final DisplayMetrics dm = mContext.getResources().getDisplayMetrics(); @@ -524,6 +533,8 @@ public class VolumeDialog { } Util.setVisOrInvis(row.settingsButton, false); row.header.setAlpha(mExpanded && isActive ? 1 : 0.5f); + row.slider.setProgressTintList(isActive ? mActiveSliderTint : mInactiveSliderTint); + row.slider.setThumbTintList(isActive ? mActiveSliderTint : mInactiveSliderTint); } }