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

Commit abcb5afb authored by Rasheed Lewis's avatar Rasheed Lewis Committed by Android (Google) Code Review
Browse files

Merge "Replaced QS Bluetooth icons with animations" into tm-qpr-dev

parents d3c42c91 02c46586
Loading
Loading
Loading
Loading
+77 −71
Original line number Diff line number Diff line
<?xml version="1.0" encoding="utf-8"?><!--
<?xml version="1.0" encoding="utf-8"?>
<!--
  ~ Copyright (C) 2020 The Android Open Source Project
  ~
  ~ Licensed under the Apache License, Version 2.0 (the "License");
@@ -14,31 +15,84 @@
  ~ limitations under the License.
  -->

<animated-vector xmlns:android="http://schemas.android.com/apk/res/android"
<animated-vector
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:aapt="http://schemas.android.com/aapt">
    <aapt:attr name="android:drawable">
        <vector
            android:height="24dp"
            android:width="24dp"
            android:viewportHeight="24"
            android:viewportWidth="24">
            <group android:name="_R_G">
                <group android:name="_R_G_L_2_G"
                    android:translateX="14.125"
                    android:translateY="12">
                    <path
                        android:name="_R_G_L_2_G_D_0_P_0"
                        android:fillColor="#ffffff"
                        android:fillAlpha="1"
                        android:fillType="nonZero"
                        android:pathData=" M-1 6.17 C-1,6.17 0.88,4.29 0.88,4.29 C0.88,4.29 -1,2.41 -1,2.41 C-1,2.41 -1,6.17 -1,6.17c  M0.88 -4.29 C0.88,-4.29 -1,-6.17 -1,-6.17 C-1,-6.17 -1,-2.41 -1,-2.41 C-1,-2.41 0.88,-4.29 0.88,-4.29c  M-2 -10 C-2,-10 3.71,-4.29 3.71,-4.29 C3.71,-4.29 -0.59,0 -0.59,0 C-0.59,0 3.71,4.29 3.71,4.29 C3.71,4.29 -2,10 -2,10 C-2,10 -3,10 -3,10 C-3,10 -3,2.41 -3,2.41 C-3,2.41 -7.59,7 -7.59,7 C-7.59,7 -9.01,5.59 -9.01,5.59 C-9.01,5.59 -3.41,0 -3.41,0 C-3.41,0 -9.01,-5.59 -9.01,-5.59 C-9.01,-5.59 -7.59,-7 -7.59,-7 C-7.59,-7 -3,-2.41 -3,-2.41 C-3,-2.41 -3,-10 -3,-10 C-3,-10 -2,-10 -2,-10c "/>
                </group>
                <group
                    android:name="_R_G_L_1_G"
                    android:translateX="14.125"
                    android:translateY="12"
                    android:pivotX="-9.109"
                    android:scaleX="1"
                    android:scaleY="1">
                    <path
                        android:name="_R_G_L_1_G_D_0_P_0"
                        android:fillColor="#ffffff"
                        android:fillAlpha="1"
                        android:fillType="nonZero"
                        android:pathData=" M-9.09 -1.5 C-8.26,-1.5 -7.59,-0.83 -7.59,0 C-7.59,0.83 -8.26,1.5 -9.09,1.5 C-9.91,1.5 -10.59,0.83 -10.59,0 C-10.59,-0.83 -9.91,-1.5 -9.09,-1.5c "/>
                </group>
                <group
                    android:name="_R_G_L_0_G"
                    android:translateX="14.125"
                    android:translateY="12"
                    android:pivotX="4.875"
                    android:scaleX="1"
                    android:scaleY="1">
                    <path
                        android:name="_R_G_L_0_G_D_0_P_0"
                        android:fillColor="#ffffff"
                        android:fillAlpha="1"
                        android:fillType="nonZero"
                        android:pathData=" M4.92 -1.5 C5.75,-1.5 6.42,-0.83 6.42,0 C6.42,0.83 5.75,1.5 4.92,1.5 C4.09,1.5 3.42,0.83 3.42,0 C3.42,-0.83 4.09,-1.5 4.92,-1.5c "/>
                </group>
            </group>
            <group android:name="time_group"/>
        </vector>
    </aapt:attr>
    <target android:name="_R_G_L_1_G">
        <aapt:attr name="android:animation">
            <set android:ordering="together">
                <objectAnimator
                    android:duration="250"
                    android:propertyName="scaleX"
                    android:duration="150"
                    android:startOffset="0"
                    android:valueFrom="0"
                    android:valueTo="1"
                    android:valueFrom="1"
                    android:valueTo="0"
                    android:valueType="floatType">
                    <aapt:attr name="android:interpolator">
                        <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.35,1 1.0,1.0" />
                        <pathInterpolator
                            android:pathData="M 0.0,0.0 c0.5,0 0.833,0.833 1.0,1.0"/>
                    </aapt:attr>
                </objectAnimator>
                <objectAnimator
                    android:duration="250"
                    android:propertyName="scaleY"
                    android:duration="150"
                    android:startOffset="0"
                    android:valueFrom="0"
                    android:valueTo="1"
                    android:valueFrom="1"
                    android:valueTo="0"
                    android:valueType="floatType">
                    <aapt:attr name="android:interpolator">
                        <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.35,1 1.0,1.0" />
                    <aapt:attr
                        name="android:interpolator">
                        <pathInterpolator
                            android:pathData="M 0.0,0.0 c0.5,0 0.833,0.833 1.0,1.0"/>
                    </aapt:attr>
                </objectAnimator>
            </set>
@@ -48,25 +102,27 @@
        <aapt:attr name="android:animation">
            <set android:ordering="together">
                <objectAnimator
                    android:duration="250"
                    android:propertyName="scaleX"
                    android:duration="150"
                    android:startOffset="0"
                    android:valueFrom="0"
                    android:valueTo="1"
                    android:valueFrom="1"
                    android:valueTo="0"
                    android:valueType="floatType">
                    <aapt:attr name="android:interpolator">
                        <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.35,1 1.0,1.0" />
                        <pathInterpolator
                            android:pathData="M 0.0,0.0 c0.5,0 0.833,0.833 1.0,1.0"/>
                    </aapt:attr>
                </objectAnimator>
                <objectAnimator
                    android:duration="250"
                    android:propertyName="scaleY"
                    android:duration="150"
                    android:startOffset="0"
                    android:valueFrom="0"
                    android:valueTo="1"
                    android:valueFrom="1"
                    android:valueTo="0"
                    android:valueType="floatType">
                    <aapt:attr name="android:interpolator">
                        <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.35,1 1.0,1.0" />
                        <pathInterpolator
                            android:pathData="M 0.0,0.0 c0.5,0 0.833,0.833 1.0,1.0"/>
                    </aapt:attr>
                </objectAnimator>
            </set>
@@ -76,8 +132,8 @@
        <aapt:attr name="android:animation">
            <set android:ordering="together">
                <objectAnimator
                    android:duration="267"
                    android:propertyName="translateX"
                    android:duration="150"
                    android:startOffset="0"
                    android:valueFrom="0"
                    android:valueTo="1"
@@ -85,54 +141,4 @@
            </set>
        </aapt:attr>
    </target>
    <aapt:attr name="android:drawable">
        <vector
            android:width="24dp"
            android:height="24dp"
            android:viewportHeight="24"
            android:viewportWidth="24">
            <group android:name="_R_G">
                <group
                    android:name="_R_G_L_2_G"
                    android:translateX="14.125"
                    android:translateY="12">
                    <path
                        android:name="_R_G_L_2_G_D_0_P_0"
                        android:fillAlpha="1"
                        android:fillColor="#ffffff"
                        android:fillType="nonZero"
                        android:pathData=" M-1 6.17 C-1,6.17 0.88,4.29 0.88,4.29 C0.88,4.29 -1,2.41 -1,2.41 C-1,2.41 -1,6.17 -1,6.17c  M0.88 -4.29 C0.88,-4.29 -1,-6.17 -1,-6.17 C-1,-6.17 -1,-2.41 -1,-2.41 C-1,-2.41 0.88,-4.29 0.88,-4.29c  M-2 -10 C-2,-10 3.71,-4.29 3.71,-4.29 C3.71,-4.29 -0.59,0 -0.59,0 C-0.59,0 3.71,4.29 3.71,4.29 C3.71,4.29 -2,10 -2,10 C-2,10 -3,10 -3,10 C-3,10 -3,2.41 -3,2.41 C-3,2.41 -7.59,7 -7.59,7 C-7.59,7 -9.01,5.59 -9.01,5.59 C-9.01,5.59 -3.41,0 -3.41,0 C-3.41,0 -9.01,-5.59 -9.01,-5.59 C-9.01,-5.59 -7.59,-7 -7.59,-7 C-7.59,-7 -3,-2.41 -3,-2.41 C-3,-2.41 -3,-10 -3,-10 C-3,-10 -2,-10 -2,-10c " />
                </group>
                <group
                    android:name="_R_G_L_1_G"
                    android:pivotX="-9.109"
                    android:scaleX="0"
                    android:scaleY="0"
                    android:translateX="14.125"
                    android:translateY="12">
                    <path
                        android:name="_R_G_L_1_G_D_0_P_0"
                        android:fillAlpha="1"
                        android:fillColor="#ffffff"
                        android:fillType="nonZero"
                        android:pathData=" M-9.09 -1.5 C-8.26,-1.5 -7.59,-0.83 -7.59,0 C-7.59,0.83 -8.26,1.5 -9.09,1.5 C-9.91,1.5 -10.59,0.83 -10.59,0 C-10.59,-0.83 -9.91,-1.5 -9.09,-1.5c " />
                </group>
                <group
                    android:name="_R_G_L_0_G"
                    android:pivotX="4.875"
                    android:scaleX="0"
                    android:scaleY="0"
                    android:translateX="14.125"
                    android:translateY="12">
                    <path
                        android:name="_R_G_L_0_G_D_0_P_0"
                        android:fillAlpha="1"
                        android:fillColor="#ffffff"
                        android:fillType="nonZero"
                        android:pathData=" M4.92 -1.5 C5.75,-1.5 6.42,-0.83 6.42,0 C6.42,0.83 5.75,1.5 4.92,1.5 C4.09,1.5 3.42,0.83 3.42,0 C3.42,-0.83 4.09,-1.5 4.92,-1.5c " />
                </group>
            </group>
            <group android:name="time_group" />
        </vector>
    </aapt:attr>
</animated-vector>
+71 −77
Original line number Diff line number Diff line
<?xml version="1.0" encoding="utf-8"?>
<!--
<?xml version="1.0" encoding="utf-8"?><!--
  ~ Copyright (C) 2020 The Android Open Source Project
  ~
  ~ Licensed under the Apache License, Version 2.0 (the "License");
@@ -15,84 +14,31 @@
  ~ limitations under the License.
  -->

<animated-vector
    xmlns:android="http://schemas.android.com/apk/res/android"
<animated-vector xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:aapt="http://schemas.android.com/aapt">
    <aapt:attr name="android:drawable">
        <vector
            android:height="24dp"
            android:width="24dp"
            android:viewportHeight="24"
            android:viewportWidth="24">
            <group android:name="_R_G">
                <group android:name="_R_G_L_2_G"
                    android:translateX="14.125"
                    android:translateY="12">
                    <path
                        android:name="_R_G_L_2_G_D_0_P_0"
                        android:fillColor="#ffffff"
                        android:fillAlpha="1"
                        android:fillType="nonZero"
                        android:pathData=" M-1 6.17 C-1,6.17 0.88,4.29 0.88,4.29 C0.88,4.29 -1,2.41 -1,2.41 C-1,2.41 -1,6.17 -1,6.17c  M0.88 -4.29 C0.88,-4.29 -1,-6.17 -1,-6.17 C-1,-6.17 -1,-2.41 -1,-2.41 C-1,-2.41 0.88,-4.29 0.88,-4.29c  M-2 -10 C-2,-10 3.71,-4.29 3.71,-4.29 C3.71,-4.29 -0.59,0 -0.59,0 C-0.59,0 3.71,4.29 3.71,4.29 C3.71,4.29 -2,10 -2,10 C-2,10 -3,10 -3,10 C-3,10 -3,2.41 -3,2.41 C-3,2.41 -7.59,7 -7.59,7 C-7.59,7 -9.01,5.59 -9.01,5.59 C-9.01,5.59 -3.41,0 -3.41,0 C-3.41,0 -9.01,-5.59 -9.01,-5.59 C-9.01,-5.59 -7.59,-7 -7.59,-7 C-7.59,-7 -3,-2.41 -3,-2.41 C-3,-2.41 -3,-10 -3,-10 C-3,-10 -2,-10 -2,-10c "/>
                </group>
                <group
                    android:name="_R_G_L_1_G"
                    android:translateX="14.125"
                    android:translateY="12"
                    android:pivotX="-9.109"
                    android:scaleX="1"
                    android:scaleY="1">
                    <path
                        android:name="_R_G_L_1_G_D_0_P_0"
                        android:fillColor="#ffffff"
                        android:fillAlpha="1"
                        android:fillType="nonZero"
                        android:pathData=" M-9.09 -1.5 C-8.26,-1.5 -7.59,-0.83 -7.59,0 C-7.59,0.83 -8.26,1.5 -9.09,1.5 C-9.91,1.5 -10.59,0.83 -10.59,0 C-10.59,-0.83 -9.91,-1.5 -9.09,-1.5c "/>
                </group>
                <group
                    android:name="_R_G_L_0_G"
                    android:translateX="14.125"
                    android:translateY="12"
                    android:pivotX="4.875"
                    android:scaleX="1"
                    android:scaleY="1">
                    <path
                        android:name="_R_G_L_0_G_D_0_P_0"
                        android:fillColor="#ffffff"
                        android:fillAlpha="1"
                        android:fillType="nonZero"
                        android:pathData=" M4.92 -1.5 C5.75,-1.5 6.42,-0.83 6.42,0 C6.42,0.83 5.75,1.5 4.92,1.5 C4.09,1.5 3.42,0.83 3.42,0 C3.42,-0.83 4.09,-1.5 4.92,-1.5c "/>
                </group>
            </group>
            <group android:name="time_group"/>
        </vector>
    </aapt:attr>
    <target android:name="_R_G_L_1_G">
        <aapt:attr name="android:animation">
            <set android:ordering="together">
                <objectAnimator
                    android:duration="250"
                    android:propertyName="scaleX"
                    android:duration="150"
                    android:startOffset="0"
                    android:valueFrom="1"
                    android:valueTo="0"
                    android:valueFrom="0"
                    android:valueTo="1"
                    android:valueType="floatType">
                    <aapt:attr name="android:interpolator">
                        <pathInterpolator
                            android:pathData="M 0.0,0.0 c0.5,0 0.833,0.833 1.0,1.0"/>
                        <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.35,1 1.0,1.0" />
                    </aapt:attr>
                </objectAnimator>
                <objectAnimator
                    android:duration="250"
                    android:propertyName="scaleY"
                    android:duration="150"
                    android:startOffset="0"
                    android:valueFrom="1"
                    android:valueTo="0"
                    android:valueFrom="0"
                    android:valueTo="1"
                    android:valueType="floatType">
                    <aapt:attr
                        name="android:interpolator">
                        <pathInterpolator
                            android:pathData="M 0.0,0.0 c0.5,0 0.833,0.833 1.0,1.0"/>
                    <aapt:attr name="android:interpolator">
                        <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.35,1 1.0,1.0" />
                    </aapt:attr>
                </objectAnimator>
            </set>
@@ -102,27 +48,25 @@
        <aapt:attr name="android:animation">
            <set android:ordering="together">
                <objectAnimator
                    android:duration="250"
                    android:propertyName="scaleX"
                    android:duration="150"
                    android:startOffset="0"
                    android:valueFrom="1"
                    android:valueTo="0"
                    android:valueFrom="0"
                    android:valueTo="1"
                    android:valueType="floatType">
                    <aapt:attr name="android:interpolator">
                        <pathInterpolator
                            android:pathData="M 0.0,0.0 c0.5,0 0.833,0.833 1.0,1.0"/>
                        <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.35,1 1.0,1.0" />
                    </aapt:attr>
                </objectAnimator>
                <objectAnimator
                    android:duration="250"
                    android:propertyName="scaleY"
                    android:duration="150"
                    android:startOffset="0"
                    android:valueFrom="1"
                    android:valueTo="0"
                    android:valueFrom="0"
                    android:valueTo="1"
                    android:valueType="floatType">
                    <aapt:attr name="android:interpolator">
                        <pathInterpolator
                            android:pathData="M 0.0,0.0 c0.5,0 0.833,0.833 1.0,1.0"/>
                        <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.35,1 1.0,1.0" />
                    </aapt:attr>
                </objectAnimator>
            </set>
@@ -132,8 +76,8 @@
        <aapt:attr name="android:animation">
            <set android:ordering="together">
                <objectAnimator
                    android:duration="267"
                    android:propertyName="translateX"
                    android:duration="150"
                    android:startOffset="0"
                    android:valueFrom="0"
                    android:valueTo="1"
@@ -141,4 +85,54 @@
            </set>
        </aapt:attr>
    </target>
    <aapt:attr name="android:drawable">
        <vector
            android:width="24dp"
            android:height="24dp"
            android:viewportHeight="24"
            android:viewportWidth="24">
            <group android:name="_R_G">
                <group
                    android:name="_R_G_L_2_G"
                    android:translateX="14.125"
                    android:translateY="12">
                    <path
                        android:name="_R_G_L_2_G_D_0_P_0"
                        android:fillAlpha="1"
                        android:fillColor="#ffffff"
                        android:fillType="nonZero"
                        android:pathData=" M-1 6.17 C-1,6.17 0.88,4.29 0.88,4.29 C0.88,4.29 -1,2.41 -1,2.41 C-1,2.41 -1,6.17 -1,6.17c  M0.88 -4.29 C0.88,-4.29 -1,-6.17 -1,-6.17 C-1,-6.17 -1,-2.41 -1,-2.41 C-1,-2.41 0.88,-4.29 0.88,-4.29c  M-2 -10 C-2,-10 3.71,-4.29 3.71,-4.29 C3.71,-4.29 -0.59,0 -0.59,0 C-0.59,0 3.71,4.29 3.71,4.29 C3.71,4.29 -2,10 -2,10 C-2,10 -3,10 -3,10 C-3,10 -3,2.41 -3,2.41 C-3,2.41 -7.59,7 -7.59,7 C-7.59,7 -9.01,5.59 -9.01,5.59 C-9.01,5.59 -3.41,0 -3.41,0 C-3.41,0 -9.01,-5.59 -9.01,-5.59 C-9.01,-5.59 -7.59,-7 -7.59,-7 C-7.59,-7 -3,-2.41 -3,-2.41 C-3,-2.41 -3,-10 -3,-10 C-3,-10 -2,-10 -2,-10c " />
                </group>
                <group
                    android:name="_R_G_L_1_G"
                    android:pivotX="-9.109"
                    android:scaleX="0"
                    android:scaleY="0"
                    android:translateX="14.125"
                    android:translateY="12">
                    <path
                        android:name="_R_G_L_1_G_D_0_P_0"
                        android:fillAlpha="1"
                        android:fillColor="#ffffff"
                        android:fillType="nonZero"
                        android:pathData=" M-9.09 -1.5 C-8.26,-1.5 -7.59,-0.83 -7.59,0 C-7.59,0.83 -8.26,1.5 -9.09,1.5 C-9.91,1.5 -10.59,0.83 -10.59,0 C-10.59,-0.83 -9.91,-1.5 -9.09,-1.5c " />
                </group>
                <group
                    android:name="_R_G_L_0_G"
                    android:pivotX="4.875"
                    android:scaleX="0"
                    android:scaleY="0"
                    android:translateX="14.125"
                    android:translateY="12">
                    <path
                        android:name="_R_G_L_0_G_D_0_P_0"
                        android:fillAlpha="1"
                        android:fillColor="#ffffff"
                        android:fillType="nonZero"
                        android:pathData=" M4.92 -1.5 C5.75,-1.5 6.42,-0.83 6.42,0 C6.42,0.83 5.75,1.5 4.92,1.5 C4.09,1.5 3.42,0.83 3.42,0 C3.42,-0.83 4.09,-1.5 4.92,-1.5c " />
                </group>
            </group>
            <group android:name="time_group" />
        </vector>
    </aapt:attr>
</animated-vector>
+5 −26
Original line number Diff line number Diff line
@@ -19,9 +19,7 @@ package com.android.systemui.qs.tiles;
import android.bluetooth.BluetoothAdapter;
import android.bluetooth.BluetoothClass;
import android.bluetooth.BluetoothDevice;
import android.content.Context;
import android.content.Intent;
import android.graphics.drawable.Drawable;
import android.os.Handler;
import android.os.Looper;
import android.os.UserManager;
@@ -134,9 +132,10 @@ public class BluetoothTile extends QSTileImpl<BooleanState> {
        state.contentDescription = mContext.getString(
                R.string.accessibility_quick_settings_bluetooth);
        state.stateDescription = "";

        if (enabled) {
            if (connected) {
                state.icon = new BluetoothConnectedTileIcon();
                state.icon = ResourceIcon.get(R.drawable.qs_bluetooth_icon_on);
                if (!TextUtils.isEmpty(mController.getConnectedDeviceName())) {
                    state.label = mController.getConnectedDeviceName();
                }
@@ -145,21 +144,19 @@ public class BluetoothTile extends QSTileImpl<BooleanState> {
                                + ", " + state.secondaryLabel;
            } else if (state.isTransient) {
                state.icon = ResourceIcon.get(
                        com.android.internal.R.drawable.ic_bluetooth_transient_animation);
                        R.drawable.qs_bluetooth_icon_search);
                state.stateDescription = state.secondaryLabel;
            } else {
                state.icon =
                        ResourceIcon.get(com.android.internal.R.drawable.ic_qs_bluetooth);
                        ResourceIcon.get(R.drawable.qs_bluetooth_icon_off);
                state.stateDescription = mContext.getString(R.string.accessibility_not_connected);
            }
            state.state = Tile.STATE_ACTIVE;
        } else {
            state.icon = ResourceIcon.get(com.android.internal.R.drawable.ic_qs_bluetooth);
            state.icon = ResourceIcon.get(R.drawable.qs_bluetooth_icon_off);
            state.state = Tile.STATE_INACTIVE;
        }

        state.dualLabelContentDescription = mContext.getResources().getString(
                R.string.accessibility_quick_settings_open_settings, getTileLabel());
        state.expandedAccessibilityClassName = Switch.class.getName();
    }

@@ -244,22 +241,4 @@ public class BluetoothTile extends QSTileImpl<BooleanState> {
            refreshState();
        }
    };

    /**
     * Bluetooth icon wrapper (when connected with no battery indicator) for Quick Settings. This is
     * used instead of {@link com.android.systemui.qs.tileimpl.QSTileImpl.DrawableIcon} in order to
     * use a context that reflects dark/light theme attributes.
     */
    private class BluetoothConnectedTileIcon extends Icon {

        BluetoothConnectedTileIcon() {
            // Do nothing. Default constructor to limit visibility.
        }

        @Override
        public Drawable getDrawable(Context context) {
            // This method returns Pair<Drawable, String> - the first value is the drawable.
            return context.getDrawable(R.drawable.ic_bluetooth_connected);
        }
    }
}
+73 −0

File changed.

Preview size limit exceeded, changes collapsed.