Merge "Priority only dnd doesn't change ringer" into pi-dev

This commit is contained in:
TreeHugger Robot
2018-03-27 17:14:17 +00:00
committed by Android (Google) Code Review
3 changed files with 10 additions and 11 deletions

View File

@@ -18,7 +18,6 @@ package com.android.systemui.volume;
import static android.accessibilityservice.AccessibilityServiceInfo.FEEDBACK_ALL_MASK; import static android.accessibilityservice.AccessibilityServiceInfo.FEEDBACK_ALL_MASK;
import static android.accessibilityservice.AccessibilityServiceInfo.FEEDBACK_GENERIC; import static android.accessibilityservice.AccessibilityServiceInfo.FEEDBACK_GENERIC;
import static android.media.AudioManager.RINGER_MODE_MAX;
import static android.media.AudioManager.RINGER_MODE_NORMAL; import static android.media.AudioManager.RINGER_MODE_NORMAL;
import static android.media.AudioManager.RINGER_MODE_SILENT; import static android.media.AudioManager.RINGER_MODE_SILENT;
import static android.media.AudioManager.RINGER_MODE_VIBRATE; import static android.media.AudioManager.RINGER_MODE_VIBRATE;
@@ -570,7 +569,11 @@ public class VolumeDialogImpl implements VolumeDialog {
return; return;
} }
enableRingerViewsH(mState.zenMode == Global.ZEN_MODE_OFF || !mState.disallowRinger); boolean isZenMuted = mState.zenMode == Global.ZEN_MODE_ALARMS
|| mState.zenMode == Global.ZEN_MODE_NO_INTERRUPTIONS
|| (mState.zenMode == Global.ZEN_MODE_IMPORTANT_INTERRUPTIONS
&& mState.disallowRinger);
enableRingerViewsH(!isZenMuted);
switch (mState.ringerModeInternal) { switch (mState.ringerModeInternal) {
case AudioManager.RINGER_MODE_VIBRATE: case AudioManager.RINGER_MODE_VIBRATE:
mRingerIcon.setImageResource(R.drawable.ic_volume_ringer_vibrate); mRingerIcon.setImageResource(R.drawable.ic_volume_ringer_vibrate);
@@ -586,7 +589,7 @@ public class VolumeDialogImpl implements VolumeDialog {
case AudioManager.RINGER_MODE_NORMAL: case AudioManager.RINGER_MODE_NORMAL:
default: default:
boolean muted = (mAutomute && ss.level == 0) || ss.muted; boolean muted = (mAutomute && ss.level == 0) || ss.muted;
if (muted) { if (!isZenMuted && muted) {
mRingerIcon.setImageResource(R.drawable.ic_volume_ringer_mute); mRingerIcon.setImageResource(R.drawable.ic_volume_ringer_mute);
mRingerIcon.setContentDescription(mContext.getString( mRingerIcon.setContentDescription(mContext.getString(
R.string.volume_stream_content_description_unmute, R.string.volume_stream_content_description_unmute,

View File

@@ -933,11 +933,7 @@ public class ZenModeHelper {
} }
break; break;
case Global.ZEN_MODE_IMPORTANT_INTERRUPTIONS: case Global.ZEN_MODE_IMPORTANT_INTERRUPTIONS:
if (ZenModeConfig.areAllPriorityOnlyNotificationZenSoundsMuted(mConfig) // do not apply zen to ringer, streams zen muted in AudioService
&& ringerModeInternal != AudioManager.RINGER_MODE_SILENT) {
setPreviousRingerModeSetting(ringerModeInternal);
newRingerModeInternal = AudioManager.RINGER_MODE_SILENT;
}
break; break;
case Global.ZEN_MODE_OFF: case Global.ZEN_MODE_OFF:
if (ringerModeInternal == AudioManager.RINGER_MODE_SILENT) { if (ringerModeInternal == AudioManager.RINGER_MODE_SILENT) {

View File

@@ -329,12 +329,12 @@ public class ZenModeHelperTest extends UiServiceTestCase {
mZenModeHelperSpy.mConfig.allowEvents = false; mZenModeHelperSpy.mConfig.allowEvents = false;
mZenModeHelperSpy.mConfig.allowRepeatCallers= false; mZenModeHelperSpy.mConfig.allowRepeatCallers= false;
// 2. apply priority only zen - verify ringer is set to silent // 2. apply priority only zen - verify ringer is unchanged
mZenModeHelperSpy.applyZenToRingerMode(); mZenModeHelperSpy.applyZenToRingerMode();
verify(mAudioManager, atLeastOnce()).setRingerModeInternal(AudioManager.RINGER_MODE_SILENT, verify(mAudioManager, never()).setRingerModeInternal(AudioManager.RINGER_MODE_SILENT,
mZenModeHelperSpy.TAG); mZenModeHelperSpy.TAG);
// 3. apply zen off - verify zen is set to prevoius ringer (normal) // 3. apply zen off - verify zen is set to previous ringer (normal)
when(mAudioManager.getRingerModeInternal()).thenReturn(AudioManager.RINGER_MODE_SILENT); when(mAudioManager.getRingerModeInternal()).thenReturn(AudioManager.RINGER_MODE_SILENT);
mZenModeHelperSpy.mZenMode = Global.ZEN_MODE_OFF; mZenModeHelperSpy.mZenMode = Global.ZEN_MODE_OFF;
mZenModeHelperSpy.applyZenToRingerMode(); mZenModeHelperSpy.applyZenToRingerMode();