summaryrefslogtreecommitdiff
path: root/InCallUI/src/com/android/incallui/AudioModeProvider.java
diff options
context:
space:
mode:
authorSantos Cordon <santoscordon@google.com>2013-08-29 04:06:45 -0700
committerSantos Cordon <santoscordon@google.com>2013-08-29 04:06:45 -0700
commit8c478132fbc07bd075df6aba85bcfd2990bbd66a (patch)
tree0e4373cfbd368649ffaf75e68d017523fbf4df56 /InCallUI/src/com/android/incallui/AudioModeProvider.java
parentfacff288cfbdfcfd9281a64fa05a78532acf3d90 (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.java19
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);
}
}