diff options
author | Santos Cordon <santoscordon@google.com> | 2013-08-29 04:06:45 -0700 |
---|---|---|
committer | Santos Cordon <santoscordon@google.com> | 2013-08-29 04:06:45 -0700 |
commit | 8c478132fbc07bd075df6aba85bcfd2990bbd66a (patch) | |
tree | 0e4373cfbd368649ffaf75e68d017523fbf4df56 /InCallUI/src/com/android/incallui/AudioModeProvider.java | |
parent | facff288cfbdfcfd9281a64fa05a78532acf3d90 (diff) |
Support visual indication of mute from headset
This change uses new binder api changes to bring down mute status from
TeleService. mute state routed through AudioModeProvider.
bug:10395427
Change-Id: Ie15efcc780e99072363188de2a954a1888eec9dd
Diffstat (limited to 'InCallUI/src/com/android/incallui/AudioModeProvider.java')
-rw-r--r-- | InCallUI/src/com/android/incallui/AudioModeProvider.java | 19 |
1 files changed, 15 insertions, 4 deletions
diff --git a/InCallUI/src/com/android/incallui/AudioModeProvider.java b/InCallUI/src/com/android/incallui/AudioModeProvider.java index 6ac8e23c2..36ec20ffa 100644 --- a/InCallUI/src/com/android/incallui/AudioModeProvider.java +++ b/InCallUI/src/com/android/incallui/AudioModeProvider.java @@ -30,17 +30,26 @@ import java.util.List; private static AudioModeProvider sAudioModeProvider; private int mAudioMode = AudioMode.EARPIECE; + private boolean mMuted = false; private int mSupportedModes = AudioMode.ALL_MODES; private final List<AudioModeListener> mListeners = Lists.newArrayList(); public AudioModeProvider() { } - public void onAudioModeChange(int newMode) { - mAudioMode = newMode; + public void onAudioModeChange(int newMode, boolean muted) { + if (mAudioMode != newMode) { + mAudioMode = newMode; + for (AudioModeListener l : mListeners) { + l.onAudioMode(mAudioMode); + } + } - for (AudioModeListener l : mListeners) { - l.onAudioMode(mAudioMode); + if (mMuted != muted) { + mMuted = muted; + for (AudioModeListener l : mListeners) { + l.onMute(mMuted); + } } } @@ -57,6 +66,7 @@ import java.util.List; mListeners.add(listener); listener.onSupportedAudioMode(mSupportedModes); listener.onAudioMode(mAudioMode); + listener.onMute(mMuted); } } @@ -76,6 +86,7 @@ import java.util.List; /* package */ interface AudioModeListener { void onAudioMode(int newMode); + void onMute(boolean muted); void onSupportedAudioMode(int modeMask); } } |