From a9dfbe8b122d746cf8841fe1b13d31e7e0fc9c52 Mon Sep 17 00:00:00 2001 From: John Spurlock Date: Tue, 17 Feb 2015 11:01:51 -0500 Subject: [PATCH] Volume: Allow dialog to query "muteable" streams. Similar to the existing ability to query streams affected by ringer mode. Bug:19260237 Change-Id: I76eb5ab6b7c7e3a4d73ac1909289c560194d4fe8 --- media/java/android/media/AudioManager.java | 13 +++++++++++++ media/java/android/media/IAudioService.aidl | 2 ++ .../java/com/android/server/audio/AudioService.java | 1 + 3 files changed, 16 insertions(+) diff --git a/media/java/android/media/AudioManager.java b/media/java/android/media/AudioManager.java index 7084eba2b09f1..da89cf454b818 100644 --- a/media/java/android/media/AudioManager.java +++ b/media/java/android/media/AudioManager.java @@ -3330,6 +3330,19 @@ public class AudioManager { } } + /** + * Only useful for volume controllers. + * @hide + */ + public boolean isStreamAffectedByMute(int streamType) { + try { + return getService().isStreamAffectedByMute(streamType); + } catch (RemoteException e) { + Log.w(TAG, "Error calling isStreamAffectedByMute", e); + return false; + } + } + /** * Only useful for volume controllers. * @hide diff --git a/media/java/android/media/IAudioService.aidl b/media/java/android/media/IAudioService.aidl index dabd9c269ca83..17f5b59f0255c 100644 --- a/media/java/android/media/IAudioService.aidl +++ b/media/java/android/media/IAudioService.aidl @@ -202,6 +202,8 @@ interface IAudioService { boolean isStreamAffectedByRingerMode(int streamType); + boolean isStreamAffectedByMute(int streamType); + void disableSafeMediaVolume(); int setHdmiSystemAudioSupported(boolean on); diff --git a/services/core/java/com/android/server/audio/AudioService.java b/services/core/java/com/android/server/audio/AudioService.java index 430142723ec19..201b1b705a2d6 100644 --- a/services/core/java/com/android/server/audio/AudioService.java +++ b/services/core/java/com/android/server/audio/AudioService.java @@ -3208,6 +3208,7 @@ public class AudioService extends IAudioService.Stub { return false; } + @Override public boolean isStreamAffectedByMute(int streamType) { return (mMuteAffectedStreams & (1 << streamType)) != 0; }