diff options
Diffstat (limited to 'src/com/android/settings/sound')
-rw-r--r-- | src/com/android/settings/sound/AudioSwitchPreferenceController.java | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/com/android/settings/sound/AudioSwitchPreferenceController.java b/src/com/android/settings/sound/AudioSwitchPreferenceController.java index dde2b3012e..6d9d3a46ed 100644 --- a/src/com/android/settings/sound/AudioSwitchPreferenceController.java +++ b/src/com/android/settings/sound/AudioSwitchPreferenceController.java @@ -78,6 +78,7 @@ public abstract class AudioSwitchPreferenceController extends BasePreferenceCont protected final LocalBluetoothProfileManager mProfileManager; protected int mSelectedIndex; protected Preference mPreference; + protected AudioSwitchCallback mAudioSwitchPreferenceCallback; private final AudioManagerAudioDeviceCallback mAudioManagerAudioDeviceCallback; private final LocalBluetoothManager mLocalBluetoothManager; @@ -85,6 +86,10 @@ public abstract class AudioSwitchPreferenceController extends BasePreferenceCont private final WiredHeadsetBroadcastReceiver mReceiver; private final Handler mHandler; + public interface AudioSwitchCallback { + void onPreferenceDataChanged(ListPreference preference); + } + public AudioSwitchPreferenceController(Context context, String preferenceKey) { super(context, preferenceKey); mAudioManager = (AudioManager) context.getSystemService(Context.AUDIO_SERVICE); @@ -207,6 +212,10 @@ public abstract class AudioSwitchPreferenceController extends BasePreferenceCont public void onDeviceBondStateChanged(CachedBluetoothDevice cachedDevice, int bondState) { } + public void setCallback(AudioSwitchCallback callback) { + mAudioSwitchPreferenceCallback = callback; + } + protected boolean isStreamFromOutputDevice(int streamType, int device) { return (device & mAudioManager.getDevicesForStream(streamType)) != 0; } @@ -335,6 +344,7 @@ public abstract class AudioSwitchPreferenceController extends BasePreferenceCont listPreference.setEntryValues(mediaValues); listPreference.setValueIndex(mSelectedIndex); listPreference.setSummary(mediaOutputs[mSelectedIndex]); + mAudioSwitchPreferenceCallback.onPreferenceDataChanged(listPreference); } private int getConnectedDeviceIndex(String hardwareAddress) { |