Loading media/java/android/media/AudioManager.java +10 −1 Original line number Diff line number Diff line Loading @@ -982,12 +982,21 @@ public class AudioManager { * @see #isVolumeFixed() */ public void setRingerMode(int ringerMode) { setRingerMode(ringerMode, true /*checkZen*/); } /** * @see #setRingerMode(int) * @param checkZen Update zen mode if necessary to compensate. * @hide */ public void setRingerMode(int ringerMode, boolean checkZen) { if (!isValidRingerMode(ringerMode)) { return; } IAudioService service = getService(); try { service.setRingerMode(ringerMode); service.setRingerMode(ringerMode, checkZen); } catch (RemoteException e) { Log.e(TAG, "Dead object in setRingerMode", e); } Loading media/java/android/media/AudioService.java +20 −3 Original line number Diff line number Diff line Loading @@ -66,6 +66,7 @@ import android.os.SystemProperties; import android.os.UserHandle; import android.os.Vibrator; import android.provider.Settings; import android.provider.Settings.Global; import android.provider.Settings.System; import android.telecom.TelecomManager; import android.text.TextUtils; Loading Loading @@ -1175,7 +1176,7 @@ public class AudioService extends IAudioService.Stub { } else { newRingerMode = AudioManager.RINGER_MODE_NORMAL; } setRingerMode(newRingerMode); setRingerMode(newRingerMode, false /*checkZen*/); } } Loading Loading @@ -1738,7 +1739,7 @@ public class AudioService extends IAudioService.Stub { } /** @see AudioManager#setRingerMode(int) */ public void setRingerMode(int ringerMode) { public void setRingerMode(int ringerMode, boolean checkZen) { if (mUseFixedVolume || isPlatformTelevision()) { return; } Loading @@ -1746,6 +1747,9 @@ public class AudioService extends IAudioService.Stub { if ((ringerMode == AudioManager.RINGER_MODE_VIBRATE) && !mHasVibrator) { ringerMode = AudioManager.RINGER_MODE_SILENT; } if (checkZen) { checkZen(ringerMode); } if (ringerMode != getRingerMode()) { setRingerModeInt(ringerMode, true); // Send sticky broadcast Loading @@ -1753,6 +1757,19 @@ public class AudioService extends IAudioService.Stub { } } private void checkZen(int ringerMode) { // leave zen when callers set ringer-mode = normal or vibrate final int zen = Global.getInt(mContentResolver, Global.ZEN_MODE, Global.ZEN_MODE_OFF); if (ringerMode != AudioManager.RINGER_MODE_SILENT && zen != Global.ZEN_MODE_OFF) { final long ident = Binder.clearCallingIdentity(); try { Global.putInt(mContentResolver, Global.ZEN_MODE, Global.ZEN_MODE_OFF); } finally { Binder.restoreCallingIdentity(ident); } } } private void setRingerModeInt(int ringerMode, boolean persist) { synchronized(mSettingsLock) { mRingerMode = ringerMode; Loading Loading @@ -2993,7 +3010,7 @@ public class AudioService extends IAudioService.Stub { break; } setRingerMode(ringerMode); setRingerMode(ringerMode, false /*checkZen*/); mPrevVolDirection = direction; Loading media/java/android/media/IAudioService.aidl +1 −1 Original line number Diff line number Diff line Loading @@ -76,7 +76,7 @@ interface IAudioService { void setMicrophoneMute(boolean on, String callingPackage); void setRingerMode(int ringerMode); void setRingerMode(int ringerMode, boolean checkZen); int getRingerMode(); Loading services/core/java/com/android/server/notification/ZenModeHelper.java +1 −1 Original line number Diff line number Diff line Loading @@ -260,7 +260,7 @@ public class ZenModeHelper { } } if (forcedRingerMode != -1) { mAudioManager.setRingerMode(forcedRingerMode); mAudioManager.setRingerMode(forcedRingerMode, false /*checkZen*/); ZenLog.traceSetRingerMode(forcedRingerMode); } } Loading Loading
media/java/android/media/AudioManager.java +10 −1 Original line number Diff line number Diff line Loading @@ -982,12 +982,21 @@ public class AudioManager { * @see #isVolumeFixed() */ public void setRingerMode(int ringerMode) { setRingerMode(ringerMode, true /*checkZen*/); } /** * @see #setRingerMode(int) * @param checkZen Update zen mode if necessary to compensate. * @hide */ public void setRingerMode(int ringerMode, boolean checkZen) { if (!isValidRingerMode(ringerMode)) { return; } IAudioService service = getService(); try { service.setRingerMode(ringerMode); service.setRingerMode(ringerMode, checkZen); } catch (RemoteException e) { Log.e(TAG, "Dead object in setRingerMode", e); } Loading
media/java/android/media/AudioService.java +20 −3 Original line number Diff line number Diff line Loading @@ -66,6 +66,7 @@ import android.os.SystemProperties; import android.os.UserHandle; import android.os.Vibrator; import android.provider.Settings; import android.provider.Settings.Global; import android.provider.Settings.System; import android.telecom.TelecomManager; import android.text.TextUtils; Loading Loading @@ -1175,7 +1176,7 @@ public class AudioService extends IAudioService.Stub { } else { newRingerMode = AudioManager.RINGER_MODE_NORMAL; } setRingerMode(newRingerMode); setRingerMode(newRingerMode, false /*checkZen*/); } } Loading Loading @@ -1738,7 +1739,7 @@ public class AudioService extends IAudioService.Stub { } /** @see AudioManager#setRingerMode(int) */ public void setRingerMode(int ringerMode) { public void setRingerMode(int ringerMode, boolean checkZen) { if (mUseFixedVolume || isPlatformTelevision()) { return; } Loading @@ -1746,6 +1747,9 @@ public class AudioService extends IAudioService.Stub { if ((ringerMode == AudioManager.RINGER_MODE_VIBRATE) && !mHasVibrator) { ringerMode = AudioManager.RINGER_MODE_SILENT; } if (checkZen) { checkZen(ringerMode); } if (ringerMode != getRingerMode()) { setRingerModeInt(ringerMode, true); // Send sticky broadcast Loading @@ -1753,6 +1757,19 @@ public class AudioService extends IAudioService.Stub { } } private void checkZen(int ringerMode) { // leave zen when callers set ringer-mode = normal or vibrate final int zen = Global.getInt(mContentResolver, Global.ZEN_MODE, Global.ZEN_MODE_OFF); if (ringerMode != AudioManager.RINGER_MODE_SILENT && zen != Global.ZEN_MODE_OFF) { final long ident = Binder.clearCallingIdentity(); try { Global.putInt(mContentResolver, Global.ZEN_MODE, Global.ZEN_MODE_OFF); } finally { Binder.restoreCallingIdentity(ident); } } } private void setRingerModeInt(int ringerMode, boolean persist) { synchronized(mSettingsLock) { mRingerMode = ringerMode; Loading Loading @@ -2993,7 +3010,7 @@ public class AudioService extends IAudioService.Stub { break; } setRingerMode(ringerMode); setRingerMode(ringerMode, false /*checkZen*/); mPrevVolDirection = direction; Loading
media/java/android/media/IAudioService.aidl +1 −1 Original line number Diff line number Diff line Loading @@ -76,7 +76,7 @@ interface IAudioService { void setMicrophoneMute(boolean on, String callingPackage); void setRingerMode(int ringerMode); void setRingerMode(int ringerMode, boolean checkZen); int getRingerMode(); Loading
services/core/java/com/android/server/notification/ZenModeHelper.java +1 −1 Original line number Diff line number Diff line Loading @@ -260,7 +260,7 @@ public class ZenModeHelper { } } if (forcedRingerMode != -1) { mAudioManager.setRingerMode(forcedRingerMode); mAudioManager.setRingerMode(forcedRingerMode, false /*checkZen*/); ZenLog.traceSetRingerMode(forcedRingerMode); } } Loading