Merge "Priority only dnd doesn't change ringer" into pi-dev
This commit is contained in:
committed by
Android (Google) Code Review
commit
0d5bbf77b5
@@ -18,7 +18,6 @@ package com.android.systemui.volume;
|
||||
|
||||
import static android.accessibilityservice.AccessibilityServiceInfo.FEEDBACK_ALL_MASK;
|
||||
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_SILENT;
|
||||
import static android.media.AudioManager.RINGER_MODE_VIBRATE;
|
||||
@@ -570,7 +569,11 @@ public class VolumeDialogImpl implements VolumeDialog {
|
||||
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) {
|
||||
case AudioManager.RINGER_MODE_VIBRATE:
|
||||
mRingerIcon.setImageResource(R.drawable.ic_volume_ringer_vibrate);
|
||||
@@ -586,7 +589,7 @@ public class VolumeDialogImpl implements VolumeDialog {
|
||||
case AudioManager.RINGER_MODE_NORMAL:
|
||||
default:
|
||||
boolean muted = (mAutomute && ss.level == 0) || ss.muted;
|
||||
if (muted) {
|
||||
if (!isZenMuted && muted) {
|
||||
mRingerIcon.setImageResource(R.drawable.ic_volume_ringer_mute);
|
||||
mRingerIcon.setContentDescription(mContext.getString(
|
||||
R.string.volume_stream_content_description_unmute,
|
||||
|
||||
@@ -933,11 +933,7 @@ public class ZenModeHelper {
|
||||
}
|
||||
break;
|
||||
case Global.ZEN_MODE_IMPORTANT_INTERRUPTIONS:
|
||||
if (ZenModeConfig.areAllPriorityOnlyNotificationZenSoundsMuted(mConfig)
|
||||
&& ringerModeInternal != AudioManager.RINGER_MODE_SILENT) {
|
||||
setPreviousRingerModeSetting(ringerModeInternal);
|
||||
newRingerModeInternal = AudioManager.RINGER_MODE_SILENT;
|
||||
}
|
||||
// do not apply zen to ringer, streams zen muted in AudioService
|
||||
break;
|
||||
case Global.ZEN_MODE_OFF:
|
||||
if (ringerModeInternal == AudioManager.RINGER_MODE_SILENT) {
|
||||
|
||||
@@ -329,12 +329,12 @@ public class ZenModeHelperTest extends UiServiceTestCase {
|
||||
mZenModeHelperSpy.mConfig.allowEvents = 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();
|
||||
verify(mAudioManager, atLeastOnce()).setRingerModeInternal(AudioManager.RINGER_MODE_SILENT,
|
||||
verify(mAudioManager, never()).setRingerModeInternal(AudioManager.RINGER_MODE_SILENT,
|
||||
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);
|
||||
mZenModeHelperSpy.mZenMode = Global.ZEN_MODE_OFF;
|
||||
mZenModeHelperSpy.applyZenToRingerMode();
|
||||
|
||||
Reference in New Issue
Block a user