diff options
2 files changed, 7 insertions, 0 deletions
diff --git a/packages/SettingsLib/src/com/android/settingslib/bluetooth/CachedBluetoothDevice.java b/packages/SettingsLib/src/com/android/settingslib/bluetooth/CachedBluetoothDevice.java index 560bc467ca8e..bcdb64d17636 100644 --- a/packages/SettingsLib/src/com/android/settingslib/bluetooth/CachedBluetoothDevice.java +++ b/packages/SettingsLib/src/com/android/settingslib/bluetooth/CachedBluetoothDevice.java @@ -1745,12 +1745,14 @@ public class CachedBluetoothDevice implements Comparable<CachedBluetoothDevice> final BluetoothDevice tmpDevice = mDevice; final short tmpRssi = mRssi; final boolean tmpJustDiscovered = mJustDiscovered; + final HearingAidInfo tmpHearingAidInfo = mHearingAidInfo; // Set main device from sub device release(); mDevice = newMainDevice.mDevice; mRssi = newMainDevice.mRssi; mJustDiscovered = newMainDevice.mJustDiscovered; + mHearingAidInfo = newMainDevice.mHearingAidInfo; fillData(); // Set sub device from backup @@ -1758,6 +1760,7 @@ public class CachedBluetoothDevice implements Comparable<CachedBluetoothDevice> newMainDevice.mDevice = tmpDevice; newMainDevice.mRssi = tmpRssi; newMainDevice.mJustDiscovered = tmpJustDiscovered; + newMainDevice.mHearingAidInfo = tmpHearingAidInfo; newMainDevice.fillData(); // Add the sub device back into mMemberDevices with correct hash diff --git a/packages/SettingsLib/tests/robotests/src/com/android/settingslib/bluetooth/CachedBluetoothDeviceTest.java b/packages/SettingsLib/tests/robotests/src/com/android/settingslib/bluetooth/CachedBluetoothDeviceTest.java index 9db8b47e9644..461ecf5d3c84 100644 --- a/packages/SettingsLib/tests/robotests/src/com/android/settingslib/bluetooth/CachedBluetoothDeviceTest.java +++ b/packages/SettingsLib/tests/robotests/src/com/android/settingslib/bluetooth/CachedBluetoothDeviceTest.java @@ -1769,8 +1769,10 @@ public class CachedBluetoothDeviceTest { public void switchMemberDeviceContent_switchMainDevice_switchesSuccessful() { mCachedDevice.mRssi = RSSI_1; mCachedDevice.mJustDiscovered = JUSTDISCOVERED_1; + mCachedDevice.setHearingAidInfo(getLeftAshaHearingAidInfo()); mSubCachedDevice.mRssi = RSSI_2; mSubCachedDevice.mJustDiscovered = JUSTDISCOVERED_2; + mSubCachedDevice.setHearingAidInfo(getRightAshaHearingAidInfo()); mCachedDevice.addMemberDevice(mSubCachedDevice); mCachedDevice.switchMemberDeviceContent(mSubCachedDevice); @@ -1778,10 +1780,12 @@ public class CachedBluetoothDeviceTest { assertThat(mCachedDevice.mRssi).isEqualTo(RSSI_2); assertThat(mCachedDevice.mJustDiscovered).isEqualTo(JUSTDISCOVERED_2); assertThat(mCachedDevice.mDevice).isEqualTo(mSubDevice); + assertThat(mCachedDevice.getDeviceSide()).isEqualTo(HearingAidInfo.DeviceSide.SIDE_RIGHT); verify(mCachedDevice).fillData(); assertThat(mSubCachedDevice.mRssi).isEqualTo(RSSI_1); assertThat(mSubCachedDevice.mJustDiscovered).isEqualTo(JUSTDISCOVERED_1); assertThat(mSubCachedDevice.mDevice).isEqualTo(mDevice); + assertThat(mSubCachedDevice.getDeviceSide()).isEqualTo(HearingAidInfo.DeviceSide.SIDE_LEFT); verify(mSubCachedDevice).fillData(); assertThat(mCachedDevice.getMemberDevice().contains(mSubCachedDevice)).isTrue(); } |