Separate mute and vibrate icons in status bar
This allows the CollapsedStatusBarFragment to block only the vibrate icon and not mute. Fixes: 184107884 Test: manual Change-Id: Idcf8b7d63e992943747f2a8bde79295597d4ff08
This commit is contained in:
@@ -107,7 +107,8 @@ public class PhoneStatusBarPolicy
|
||||
private final String mSlotBluetooth;
|
||||
private final String mSlotTty;
|
||||
private final String mSlotZen;
|
||||
private final String mSlotVolume;
|
||||
private final String mSlotMute;
|
||||
private final String mSlotVibrate;
|
||||
private final String mSlotAlarmClock;
|
||||
private final String mSlotManagedProfile;
|
||||
private final String mSlotRotate;
|
||||
@@ -149,7 +150,8 @@ public class PhoneStatusBarPolicy
|
||||
private final PrivacyLogger mPrivacyLogger;
|
||||
|
||||
private boolean mZenVisible;
|
||||
private boolean mVolumeVisible;
|
||||
private boolean mVibrateVisible;
|
||||
private boolean mMuteVisible;
|
||||
private boolean mCurrentUserSetup;
|
||||
|
||||
private boolean mManagedProfileIconVisible = false;
|
||||
@@ -207,7 +209,8 @@ public class PhoneStatusBarPolicy
|
||||
mSlotBluetooth = resources.getString(com.android.internal.R.string.status_bar_bluetooth);
|
||||
mSlotTty = resources.getString(com.android.internal.R.string.status_bar_tty);
|
||||
mSlotZen = resources.getString(com.android.internal.R.string.status_bar_zen);
|
||||
mSlotVolume = resources.getString(com.android.internal.R.string.status_bar_volume);
|
||||
mSlotMute = resources.getString(com.android.internal.R.string.status_bar_mute);
|
||||
mSlotVibrate = resources.getString(com.android.internal.R.string.status_bar_volume);
|
||||
mSlotAlarmClock = resources.getString(com.android.internal.R.string.status_bar_alarm_clock);
|
||||
mSlotManagedProfile = resources.getString(
|
||||
com.android.internal.R.string.status_bar_managed_profile);
|
||||
@@ -264,9 +267,14 @@ public class PhoneStatusBarPolicy
|
||||
mIconController.setIcon(mSlotZen, R.drawable.stat_sys_dnd, null);
|
||||
mIconController.setIconVisibility(mSlotZen, false);
|
||||
|
||||
// volume
|
||||
mIconController.setIcon(mSlotVolume, R.drawable.stat_sys_ringer_vibrate, null);
|
||||
mIconController.setIconVisibility(mSlotVolume, false);
|
||||
// vibrate
|
||||
mIconController.setIcon(mSlotVibrate, R.drawable.stat_sys_ringer_vibrate,
|
||||
mResources.getString(R.string.accessibility_ringer_vibrate));
|
||||
mIconController.setIconVisibility(mSlotVibrate, false);
|
||||
// mute
|
||||
mIconController.setIcon(mSlotMute, R.drawable.stat_sys_ringer_silent,
|
||||
mResources.getString(R.string.accessibility_ringer_silent));
|
||||
mIconController.setIconVisibility(mSlotMute, false);
|
||||
updateVolumeZen();
|
||||
|
||||
// cast
|
||||
@@ -372,9 +380,8 @@ public class PhoneStatusBarPolicy
|
||||
int zenIconId = 0;
|
||||
String zenDescription = null;
|
||||
|
||||
boolean volumeVisible = false;
|
||||
int volumeIconId = 0;
|
||||
String volumeDescription = null;
|
||||
boolean vibrateVisible = false;
|
||||
boolean muteVisible = false;
|
||||
int zen = mZenController.getZen();
|
||||
|
||||
if (DndTile.isVisible(mSharedPreferences) || DndTile.isCombinedIcon(mSharedPreferences)) {
|
||||
@@ -396,13 +403,9 @@ public class PhoneStatusBarPolicy
|
||||
mRingerModeTracker.getRingerModeInternal().getValue();
|
||||
if (ringerModeInternal != null) {
|
||||
if (ringerModeInternal == AudioManager.RINGER_MODE_VIBRATE) {
|
||||
volumeVisible = true;
|
||||
volumeIconId = R.drawable.stat_sys_ringer_vibrate;
|
||||
volumeDescription = mResources.getString(R.string.accessibility_ringer_vibrate);
|
||||
vibrateVisible = true;
|
||||
} else if (ringerModeInternal == AudioManager.RINGER_MODE_SILENT) {
|
||||
volumeVisible = true;
|
||||
volumeIconId = R.drawable.stat_sys_ringer_silent;
|
||||
volumeDescription = mResources.getString(R.string.accessibility_ringer_silent);
|
||||
muteVisible = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -415,13 +418,16 @@ public class PhoneStatusBarPolicy
|
||||
mZenVisible = zenVisible;
|
||||
}
|
||||
|
||||
if (volumeVisible) {
|
||||
mIconController.setIcon(mSlotVolume, volumeIconId, volumeDescription);
|
||||
if (vibrateVisible != mVibrateVisible) {
|
||||
mIconController.setIconVisibility(mSlotVibrate, vibrateVisible);
|
||||
mVibrateVisible = vibrateVisible;
|
||||
}
|
||||
if (volumeVisible != mVolumeVisible) {
|
||||
mIconController.setIconVisibility(mSlotVolume, volumeVisible);
|
||||
mVolumeVisible = volumeVisible;
|
||||
|
||||
if (muteVisible != mMuteVisible) {
|
||||
mIconController.setIconVisibility(mSlotMute, muteVisible);
|
||||
mMuteVisible = muteVisible;
|
||||
}
|
||||
|
||||
updateAlarm();
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user