* Show only selectable codecs to the user
* Removed redundant 'abstract' layer
* Disable codec selection when BluetoothA2dp, active device unavailable
or HD Audio disabled.
Bug: 329809288
Bug: 346490998
Flag: EXEMPT - refactor
Test: atest SettingsRoboTests:com.android.settings.development.bluetooth.BluetoothCodecListPreferenceControllerTest
Merged-In: I56ebfeaf2cfa22ec253db897d7b7e96d1f8eee61
Change-Id: I23714715d9257479f5eac1a172ba1804da7e64e3
Problem: These tests were failing because the resource ID used in the
test and its version of the R class resolved to a different integer
(and subsequently a different string array) than the R class used on
device. This was causing different string arrays with different lengths
and values to sometimes appear, especially when the source and tests
were builts separately.
Solution: Manually lookup the resource ID to use by name instead of
using the pre-baked R class and assuming its ID is correct. This allows
us to get the proper ID every time and trust the values in the array.
This trust allows for some clean up on the code and tests, such that now
our tests can iterate on values instead of relying on private constants
being made visible or even hardcoded values.
Flag: EXEMPT, test fix and minor refactor with no behavior change
Bug: 339148064
Test: atest com.android.settings.development.bluetooth.BluetoothStackLogPreferenceControllerTest
Change-Id: I8149bd06ed70589afb3797a9f453eb2a11c3c410
The goal is to be able to enable different log levels for Bluetooth
stack logging from Developer Options in Settings. This is done by
creating a Bluetooth property which houses the current state of the log
level, adding the required UI elements and linking the two together.
Tag: #feature
Bug: 307330446
Test: atest BluetoothStackLogPreferenceControllerTest
Change-Id: I8665b17622218743aa00250118b718d5cabdb9fc
SwitchPreference and SwitchPreferenceCompat are both TwoStatePreference.
Using TwoStatePreference in Java will helps migration in the future.
Bug: 306771414
Test: manual - check Settings pages
Change-Id: I84e1d7b09451106797c2b23d127855c6976678ca
Stub implementation for LC3 is added due to the interfaces being
present. The BT stack does not currently implement LC3 over A2DP.
Bug: 226441860
Test: BluetoothCodecDialogPreferenceControllerTest
Change-Id: I40546c97370872b37c0258d10e67a3871f9d9af5
-setCodecConfigPreference() should not be called when disableOptionalCodecs() is called.
-disableOptionalCodecs() would set SBC codec automatically
Bug: 183456866
Test: make -j50 RunSettingsRoboTests ROBOTEST_FILTER=BluetoothCodecDialogPreferenceControllerTest
Change-Id: Ib18f4a683dcba7ba92df827c30da0088c90b4d72
-Private DNS dialog uses preference_widget_dialog_summary
layout. It is wrong to set Bluetooth string for it.
-Remove default string from preference_widget_dialog_summary
-Set the customized string in BaseBluetoothDialogPreference
Bug: 179329046
Test: manual test
Change-Id: I749647f48e4bba7d4d0f9099d1c40d788778c15e
-To set highest priority when codec modification comes from development setting
Bug: 165442632
Test: make -j42 RunSettingsRoboTests
Change-Id: I8cfbaa276f3b3e269f4a80e8aae987fbb90f646e
-Implement PreferenceControllerMixin to decide nonIndexableKeys list according to isAvailable() status
Bug: 156337281
Test: make -j50 RunSettingsRoboTests
Change-Id: I8787acfd50ac351499781d016a3c806a1a6b4f9f
Revert submission 10303287-revert-10253996-bt-a2dp-no-null-FQRXACWPIA
Reason for revert: Fixing breakage
Reverted Changes:
I4d9f2f819:Revert "Make sure calls to BluetoothA2dp APIs pass...
I771ca0d57:Revert "Need to now pass in active device instead ...
I76529c7a1:Revert "Pass in active device to all BluetoothA2dp...
I297bda68d:Revert "Require user pass in a non-null BluetoothD...
I525327959:Revert "Pass in active device to all BluetoothA2dp...
I1d8660b11:Revert "Pass in active device to all BluetoothA2dp...
Bug: 147287141
Test: robotests
Merged-In: I5aecfa4b5a8e371b914573ddd080acb98078bfca
Change-Id: I5aecfa4b5a8e371b914573ddd080acb98078bfca
Revert submission 10253996-bt-a2dp-no-null
Reason for revert: b/149361880
Reverted Changes:
If43934374: Pass in active device to all BluetoothA2dp APIs in...
I22dd1ca36: Make sure calls to BluetoothA2dp APIs pass non-nul...
If6475af6f: Require user pass in a non-null BluetoothDevice to...
I9d0e2c89c: Pass in active device to all BluetoothA2dp APIs in...
I1faa6174d: Need to now pass in active device instead of null ...
I69a941a7e: Pass in active device to all BluetoothA2dp APIs in...
Change-Id: I1d8660b11c917cf657e61478d58794182e17ec1a
- Modify XML to apply new preferences and controllers
- Remove old controller file
- Move codec optional codec to the uppler layer
Bug: 142227996
Test: make -j50 RunSettingsRoboTests
Change-Id: Ia8fca4bc5b228592fdacad206e010bf0219282d4