Merge "Fix pixel buds icon is empty in output switcher" into rvc-qpr-dev
This commit is contained in:
committed by
Android (Google) Code Review
commit
31534b741c
@@ -18,6 +18,7 @@ package com.android.settingslib.media;
|
||||
import android.bluetooth.BluetoothClass;
|
||||
import android.bluetooth.BluetoothDevice;
|
||||
import android.content.Context;
|
||||
import android.graphics.drawable.BitmapDrawable;
|
||||
import android.graphics.drawable.Drawable;
|
||||
import android.media.MediaRoute2Info;
|
||||
import android.media.MediaRouter2Manager;
|
||||
@@ -56,8 +57,9 @@ public class BluetoothMediaDevice extends MediaDevice {
|
||||
|
||||
@Override
|
||||
public Drawable getIcon() {
|
||||
final Drawable drawable = getIconWithoutBackground();
|
||||
if (!isFastPairDevice()) {
|
||||
final Drawable drawable =
|
||||
BluetoothUtils.getBtDrawableWithDescription(mContext, mCachedDevice).first;
|
||||
if (!(drawable instanceof BitmapDrawable)) {
|
||||
setColorFilter(drawable);
|
||||
}
|
||||
return BluetoothUtils.buildAdvancedDrawable(mContext, drawable);
|
||||
@@ -65,9 +67,7 @@ public class BluetoothMediaDevice extends MediaDevice {
|
||||
|
||||
@Override
|
||||
public Drawable getIconWithoutBackground() {
|
||||
return isFastPairDevice()
|
||||
? BluetoothUtils.getBtDrawableWithDescription(mContext, mCachedDevice).first
|
||||
: mContext.getDrawable(R.drawable.ic_headphone);
|
||||
return BluetoothUtils.getBtClassDrawableWithDescription(mContext, mCachedDevice).first;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -24,6 +24,7 @@ import static org.mockito.Mockito.when;
|
||||
import android.bluetooth.BluetoothDevice;
|
||||
import android.bluetooth.BluetoothProfile;
|
||||
import android.content.Context;
|
||||
import android.graphics.drawable.BitmapDrawable;
|
||||
|
||||
import com.android.settingslib.bluetooth.CachedBluetoothDevice;
|
||||
|
||||
@@ -96,4 +97,17 @@ public class BluetoothMediaDeviceTest {
|
||||
|
||||
assertThat(mBluetoothMediaDevice.isFastPairDevice()).isFalse();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void getIcon_isNotFastPairDevice_drawableTypeIsNotBitmapDrawable() {
|
||||
final BluetoothDevice bluetoothDevice = mock(BluetoothDevice.class);
|
||||
when(mDevice.getDevice()).thenReturn(bluetoothDevice);
|
||||
|
||||
final String value = "False";
|
||||
final byte[] bytes = value.getBytes();
|
||||
when(bluetoothDevice.getMetadata(BluetoothDevice.METADATA_IS_UNTETHERED_HEADSET))
|
||||
.thenReturn(bytes);
|
||||
|
||||
assertThat(mBluetoothMediaDevice.getIcon() instanceof BitmapDrawable).isFalse();
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user