diff --git a/packages/SettingsLib/res/drawable/ic_headphone.xml b/packages/SettingsLib/res/drawable/ic_headphone.xml
new file mode 100644
index 0000000000000..3b44f8f2153fc
--- /dev/null
+++ b/packages/SettingsLib/res/drawable/ic_headphone.xml
@@ -0,0 +1,29 @@
+
+
+
+
+
\ No newline at end of file
diff --git a/packages/SettingsLib/res/drawable/ic_media_device.xml b/packages/SettingsLib/res/drawable/ic_media_display_device.xml
similarity index 54%
rename from packages/SettingsLib/res/drawable/ic_media_device.xml
rename to packages/SettingsLib/res/drawable/ic_media_display_device.xml
index 5a6aeb4a8e237..78b4e2a23d45a 100644
--- a/packages/SettingsLib/res/drawable/ic_media_device.xml
+++ b/packages/SettingsLib/res/drawable/ic_media_display_device.xml
@@ -1,6 +1,6 @@
-
-
+ android:fillType="evenOdd"/>
\ No newline at end of file
diff --git a/packages/SettingsLib/res/drawable/ic_media_group_device.xml b/packages/SettingsLib/res/drawable/ic_media_group_device.xml
index ba5e65119ead9..478a860958692 100644
--- a/packages/SettingsLib/res/drawable/ic_media_group_device.xml
+++ b/packages/SettingsLib/res/drawable/ic_media_group_device.xml
@@ -21,12 +21,16 @@
android:viewportHeight="24"
android:tint="?android:attr/colorControlNormal">
+ android:fillColor="#000000"
+ android:pathData="M19,4v14l-10,-0.01V4h10m0,-2H9c-1.1,0 -2,0.9 -2,2v13.99c0,1.1 0.89,
+ 2 2,2L19,20c1.1,0 2,-0.9 2,-2V4c0,-1.1 -0.9,-2 -2,-2z"/>
+ android:fillColor="#000000"
+ android:pathData="M14,7m-1.5,0a1.5,1.5 0,1 1,3 0a1.5,1.5 0,1 1,-3 0"/>
+ android:fillColor="#000000"
+ android:pathData="M14,17c1.93,0 3.5,-1.57 3.5,-3.5S15.93,10 14,10s-3.5,
+ 1.57 -3.5,3.5S12.07,17 14,17zM14,12c0.83,0 1.5,0.67 1.5,1.5S14.83,15 14,
+ 15s-1.5,-0.67 -1.5,-1.5 0.67,-1.5 1.5,-1.5zM6,5L4,5v16c0,1.1 0.89,2 2,
+ 2h10v-2L6,21L6,5z"/>
\ No newline at end of file
diff --git a/packages/SettingsLib/res/drawable/ic_media_speaker_device.xml b/packages/SettingsLib/res/drawable/ic_media_speaker_device.xml
new file mode 100644
index 0000000000000..32fe7d1c17ff8
--- /dev/null
+++ b/packages/SettingsLib/res/drawable/ic_media_speaker_device.xml
@@ -0,0 +1,30 @@
+
+
+
+
+
\ No newline at end of file
diff --git a/packages/SettingsLib/res/drawable/ic_smartphone.xml b/packages/SettingsLib/res/drawable/ic_smartphone.xml
index 84a96da95fb10..09811bb4b7921 100644
--- a/packages/SettingsLib/res/drawable/ic_smartphone.xml
+++ b/packages/SettingsLib/res/drawable/ic_smartphone.xml
@@ -20,10 +20,9 @@
android:width="24dp"
android:height="24dp"
android:tint="?android:attr/colorControlNormal">
-
+ android:pathData="M17,1.01L7,1c-1.1,0 -2,0.9 -2,2v18c0,1.1 0.9,
+ 2 2,2h10c1.1,0 2,-0.9 2,-2L19,3c0,-1.1 -0.9,-1.99 -2,-1.99zM17,
+ 21L7,21v-1h10v1zM17,18L7,18L7,6h10v12zM7,4L7,3h10v1L7,4z"/>
diff --git a/packages/SettingsLib/src/com/android/settingslib/media/BluetoothMediaDevice.java b/packages/SettingsLib/src/com/android/settingslib/media/BluetoothMediaDevice.java
index a2f77e2d5046b..40d80488af960 100644
--- a/packages/SettingsLib/src/com/android/settingslib/media/BluetoothMediaDevice.java
+++ b/packages/SettingsLib/src/com/android/settingslib/media/BluetoothMediaDevice.java
@@ -59,12 +59,18 @@ public class BluetoothMediaDevice extends MediaDevice {
public Drawable getIcon() {
final Pair pair = BluetoothUtils
.getBtRainbowDrawableWithDescription(mContext, mCachedDevice);
- return pair.first;
+ return isFastPairDevice()
+ ? pair.first
+ : BluetoothUtils.buildBtRainbowDrawable(mContext,
+ mContext.getDrawable(R.drawable.ic_headphone),
+ mCachedDevice.getAddress().hashCode());
}
@Override
public Drawable getIconWithoutBackground() {
- return BluetoothUtils.getBtDrawableWithDescription(mContext, mCachedDevice).first;
+ return isFastPairDevice()
+ ? BluetoothUtils.getBtDrawableWithDescription(mContext, mCachedDevice).first
+ : mContext.getDrawable(R.drawable.ic_headphone);
}
@Override
diff --git a/packages/SettingsLib/src/com/android/settingslib/media/InfoMediaDevice.java b/packages/SettingsLib/src/com/android/settingslib/media/InfoMediaDevice.java
index 22dc90643128f..8d6bc5c972287 100644
--- a/packages/SettingsLib/src/com/android/settingslib/media/InfoMediaDevice.java
+++ b/packages/SettingsLib/src/com/android/settingslib/media/InfoMediaDevice.java
@@ -73,9 +73,11 @@ public class InfoMediaDevice extends MediaDevice {
resId = R.drawable.ic_media_group_device;
break;
case TYPE_REMOTE_TV:
+ resId = R.drawable.ic_media_display_device;
+ break;
case TYPE_REMOTE_SPEAKER:
default:
- resId = R.drawable.ic_media_device;
+ resId = R.drawable.ic_media_speaker_device;
break;
}
return resId;
diff --git a/packages/SettingsLib/tests/robotests/src/com/android/settingslib/media/InfoMediaDeviceTest.java b/packages/SettingsLib/tests/robotests/src/com/android/settingslib/media/InfoMediaDeviceTest.java
index 685c834ff3281..49b236a2188f4 100644
--- a/packages/SettingsLib/tests/robotests/src/com/android/settingslib/media/InfoMediaDeviceTest.java
+++ b/packages/SettingsLib/tests/robotests/src/com/android/settingslib/media/InfoMediaDeviceTest.java
@@ -95,11 +95,13 @@ public class InfoMediaDeviceTest {
public void getDrawableResId_returnCorrectResId() {
when(mRouteInfo.getType()).thenReturn(TYPE_REMOTE_TV);
- assertThat(mInfoMediaDevice.getDrawableResId()).isEqualTo(R.drawable.ic_media_device);
+ assertThat(mInfoMediaDevice.getDrawableResId()).isEqualTo(
+ R.drawable.ic_media_display_device);
when(mRouteInfo.getType()).thenReturn(TYPE_REMOTE_SPEAKER);
- assertThat(mInfoMediaDevice.getDrawableResId()).isEqualTo(R.drawable.ic_media_device);
+ assertThat(mInfoMediaDevice.getDrawableResId()).isEqualTo(
+ R.drawable.ic_media_speaker_device);
when(mRouteInfo.getType()).thenReturn(TYPE_GROUP);