DO NOT MERGE Fix Notification Settings when unblockable app is blocked.

am: db380fa9cb

Change-Id: I248be6a106a5dc20b5e391b2aebc267786a97e65
This commit is contained in:
Geoffrey Pitsch
2017-01-10 19:12:25 +00:00
committed by android-build-merger

View File

@@ -155,7 +155,7 @@ abstract public class NotificationSettingsBase extends SettingsPreferenceFragmen
} }
protected void setupImportancePrefs(boolean notBlockable, boolean notSilenceable, protected void setupImportancePrefs(boolean notBlockable, boolean notSilenceable,
int importance, boolean banned) { int importance, boolean banned) {
if (mShowSlider && !notSilenceable) { if (mShowSlider && !notSilenceable) {
setVisible(mBlock, false); setVisible(mBlock, false);
setVisible(mSilent, false); setVisible(mSilent, false);
@@ -176,10 +176,11 @@ abstract public class NotificationSettingsBase extends SettingsPreferenceFragmen
}); });
} else { } else {
setVisible(mImportance, false); setVisible(mImportance, false);
if (notBlockable) { // Hide controls that are not settable, unless they are already switched on.
final boolean blocked = (importance == Ranking.IMPORTANCE_NONE || banned);
if (notBlockable && !blocked) {
setVisible(mBlock, false); setVisible(mBlock, false);
} else { } else {
boolean blocked = importance == Ranking.IMPORTANCE_NONE || banned;
mBlock.setChecked(blocked); mBlock.setChecked(blocked);
mBlock.setOnPreferenceChangeListener(new Preference.OnPreferenceChangeListener() { mBlock.setOnPreferenceChangeListener(new Preference.OnPreferenceChangeListener() {
@Override @Override
@@ -193,10 +194,11 @@ abstract public class NotificationSettingsBase extends SettingsPreferenceFragmen
} }
}); });
} }
if (notSilenceable) { final boolean silenced = (importance == Ranking.IMPORTANCE_LOW);
if (notSilenceable && !silenced) {
setVisible(mSilent, false); setVisible(mSilent, false);
} else { } else {
mSilent.setChecked(importance == Ranking.IMPORTANCE_LOW); mSilent.setChecked(silenced);
mSilent.setOnPreferenceChangeListener(new Preference.OnPreferenceChangeListener() { mSilent.setOnPreferenceChangeListener(new Preference.OnPreferenceChangeListener() {
@Override @Override
public boolean onPreferenceChange(Preference preference, Object newValue) { public boolean onPreferenceChange(Preference preference, Object newValue) {