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

Commit 792df3a3 authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Automerger Merge Worker
Browse files

Merge "Fix pixel buds icon is empty in output switcher" into rvc-qpr-dev am: 31534b74

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/13162479

Change-Id: Iac1a78ec85d20bf244053e556ebdb276dd6bda59
parents c6db9acc 31534b74
Loading
Loading
Loading
Loading
+5 −5
Original line number Diff line number Diff line
@@ -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
+14 −0
Original line number Diff line number Diff line
@@ -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();
    }
}