Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit aa8391d5 authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Android (Google) Code Review
Browse files

Merge "DO NOT MERGE Update volume dialog colors" into pi-dev

parents 4651a6cb 37ccf08a
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -93,7 +93,7 @@
                    android:layout_gravity="center"
                    android:contentDescription="@string/accessibility_volume_settings"
                    android:background="@drawable/ripple_drawable_20dp"
                    android:tint="?android:attr/textColorHint"
                    android:tint="?android:attr/textColorSecondary"
                    android:soundEffectsEnabled="false" />
            </FrameLayout>
        </LinearLayout>
+0 −3
Original line number Diff line number Diff line
@@ -125,9 +125,6 @@
    <color name="light_mode_icon_color_dual_tone_background">#4dffffff</color>
    <color name="light_mode_icon_color_dual_tone_fill">#ffffff</color>

    <color name="volume_settings_icon_color">#7fffffff</color>
    <color name="volume_slider_inactive">@*android:color/quaternary_device_default_settings</color>

    <color name="docked_divider_background">#ff000000</color>
    <color name="docked_divider_handle">#ffffff</color>
    <drawable name="forced_resizable_background">#59000000</drawable>
+24 −8
Original line number Diff line number Diff line
@@ -43,8 +43,10 @@ import android.content.Intent;
import android.content.res.ColorStateList;
import android.content.res.Configuration;
import android.content.res.Resources;
import android.content.res.TypedArray;
import android.graphics.Color;
import android.graphics.PixelFormat;
import android.graphics.PorterDuff;
import android.graphics.drawable.ColorDrawable;
import android.media.AudioManager;
import android.media.AudioSystem;
@@ -90,6 +92,7 @@ import com.android.systemui.plugins.VolumeDialog;
import com.android.systemui.plugins.VolumeDialogController;
import com.android.systemui.plugins.VolumeDialogController.State;
import com.android.systemui.plugins.VolumeDialogController.StreamState;
import com.android.systemui.statusbar.phone.StatusBar;
import com.android.systemui.statusbar.policy.AccessibilityManagerWrapper;
import com.android.systemui.statusbar.policy.DeviceProvisionedController;

@@ -131,8 +134,10 @@ public class VolumeDialogImpl implements VolumeDialog {
    private final AccessibilityManagerWrapper mAccessibilityMgr;
    private final Object mSafetyWarningLock = new Object();
    private final Accessibility mAccessibility = new Accessibility();
    private final ColorStateList mActiveTint;
    private final ColorStateList mInactiveTint;
    private ColorStateList mActiveTint;
    private int mActiveAlpha;
    private ColorStateList mInactiveTint;
    private int mInactiveAlpha;

    private boolean mShowing;
    private boolean mShowA11yStream;
@@ -150,8 +155,6 @@ public class VolumeDialogImpl implements VolumeDialog {
        mController = Dependency.get(VolumeDialogController.class);
        mKeyguard = (KeyguardManager) mContext.getSystemService(Context.KEYGUARD_SERVICE);
        mAccessibilityMgr = Dependency.get(AccessibilityManagerWrapper.class);
        mActiveTint = ColorStateList.valueOf(Utils.getColorAccent(mContext));
        mInactiveTint = loadColorStateList(R.color.volume_slider_inactive);
        mDeviceProvisionedController = Dependency.get(DeviceProvisionedController.class);
    }

@@ -224,6 +227,12 @@ public class VolumeDialogImpl implements VolumeDialog {
            return true;
        });

        mActiveTint = ColorStateList.valueOf(Utils.getColorAccent(mContext));
        mActiveAlpha = Color.alpha(mActiveTint.getDefaultColor());
        mInactiveTint = ColorStateList.valueOf(
                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);
        mRingerIcon = mRinger.findViewById(R.id.ringer_icon);
@@ -263,8 +272,11 @@ public class VolumeDialogImpl implements VolumeDialog {
        return mDialogView;
    }

    private ColorStateList loadColorStateList(int colorResId) {
        return ColorStateList.valueOf(mContext.getColor(colorResId));
    private int getAlphaAttr(int attr) {
        TypedArray ta = mContext.obtainStyledAttributes(new int[]{attr});
        float alpha = ta.getFloat(0, 0);
        ta.recycle();
        return (int) (alpha * 255);
    }

    private boolean isLandscape() {
@@ -890,12 +902,16 @@ public class VolumeDialogImpl implements VolumeDialog {
        if (isActive) {
            row.slider.requestFocus();
        }
        final ColorStateList tint = isActive && row.slider.isEnabled() ? mActiveTint
                : mInactiveTint;
        boolean useActiveColoring = isActive && row.slider.isEnabled();
        final ColorStateList tint = useActiveColoring ? mActiveTint : mInactiveTint;
        final int alpha = useActiveColoring ? mActiveAlpha : mInactiveAlpha;
        if (tint == row.cachedTint) return;
        row.slider.setProgressTintList(tint);
        row.slider.setThumbTintList(tint);
        row.slider.setProgressBackgroundTintList(tint);
        row.slider.setAlpha(((float) alpha) / 255);
        row.icon.setImageTintList(tint);
        row.icon.setImageAlpha(alpha);
        row.cachedTint = tint;
    }