summaryrefslogtreecommitdiff
path: root/src/com/android/settings/development/bluetooth/AbstractBluetoothDialogPreferenceController.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/com/android/settings/development/bluetooth/AbstractBluetoothDialogPreferenceController.java')
-rw-r--r--src/com/android/settings/development/bluetooth/AbstractBluetoothDialogPreferenceController.java24
1 files changed, 23 insertions, 1 deletions
diff --git a/src/com/android/settings/development/bluetooth/AbstractBluetoothDialogPreferenceController.java b/src/com/android/settings/development/bluetooth/AbstractBluetoothDialogPreferenceController.java
index 99f25d85d6..71907b6f9f 100644
--- a/src/com/android/settings/development/bluetooth/AbstractBluetoothDialogPreferenceController.java
+++ b/src/com/android/settings/development/bluetooth/AbstractBluetoothDialogPreferenceController.java
@@ -53,9 +53,12 @@ public abstract class AbstractBluetoothDialogPreferenceController extends
protected static final int[] CHANNEL_MODES = {BluetoothCodecConfig.CHANNEL_MODE_STEREO,
BluetoothCodecConfig.CHANNEL_MODE_MONO};
+ protected final BluetoothA2dpConfigStore mBluetoothA2dpConfigStore;
+
public AbstractBluetoothDialogPreferenceController(Context context, Lifecycle lifecycle,
BluetoothA2dpConfigStore store) {
super(context, lifecycle, store);
+ mBluetoothA2dpConfigStore = store;
}
@Override
@@ -92,6 +95,25 @@ public abstract class AbstractBluetoothDialogPreferenceController extends
return getCurrentIndexByConfig(codecConfig);
}
+ @Override
+ public void onBluetoothServiceConnected(BluetoothA2dp bluetoothA2dp) {
+ super.onBluetoothServiceConnected(bluetoothA2dp);
+ initConfigStore();
+ }
+
+ private void initConfigStore() {
+ final BluetoothCodecConfig config = getCurrentCodecConfig();
+ if (config == null) {
+ return;
+ }
+ mBluetoothA2dpConfigStore.setCodecType(config.getCodecType());
+ mBluetoothA2dpConfigStore.setSampleRate(config.getSampleRate());
+ mBluetoothA2dpConfigStore.setBitsPerSample(config.getBitsPerSample());
+ mBluetoothA2dpConfigStore.setChannelMode(config.getChannelMode());
+ mBluetoothA2dpConfigStore.setCodecPriority(config.getCodecPriority());
+ mBluetoothA2dpConfigStore.setCodecSpecific1Value(config.getCodecSpecific1());
+ }
+
/**
* Updates the new value to the {@link BluetoothA2dpConfigStore}.
*
@@ -174,7 +196,7 @@ public abstract class AbstractBluetoothDialogPreferenceController extends
*
* @param enabled Is {@code true} when the setting is enabled.
*/
- public void onHDAudioEnabled(boolean enabled) {};
+ public void onHDAudioEnabled(boolean enabled) {}
static int getHighestCodec(BluetoothCodecConfig[] configs) {
if (configs == null) {