diff --git a/services/core/java/com/android/server/notification/ZenModeHelper.java b/services/core/java/com/android/server/notification/ZenModeHelper.java index 31d5cd7d6cce0..0f9a59b0c6680 100644 --- a/services/core/java/com/android/server/notification/ZenModeHelper.java +++ b/services/core/java/com/android/server/notification/ZenModeHelper.java @@ -347,7 +347,10 @@ public class ZenModeHelper implements AudioManagerInternal.RingerModeDelegate { break; case AudioManager.RINGER_MODE_VIBRATE: case AudioManager.RINGER_MODE_NORMAL: - if (mZenMode != Global.ZEN_MODE_OFF) { + if (isChange && ringerModeOld == AudioManager.RINGER_MODE_SILENT + && mZenMode == Global.ZEN_MODE_NO_INTERRUPTIONS) { + newZen = Global.ZEN_MODE_OFF; + } else if (mZenMode != Global.ZEN_MODE_OFF) { ringerModeExternalOut = AudioManager.RINGER_MODE_SILENT; } break;