diff options
| -rw-r--r-- | packages/SystemUI/src/com/android/systemui/statusbar/NotificationInfo.java | 10 | ||||
| -rw-r--r-- | packages/SystemUI/tests/src/com/android/systemui/statusbar/NotificationInfoTest.java | 5 |
2 files changed, 9 insertions, 6 deletions
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/NotificationInfo.java b/packages/SystemUI/src/com/android/systemui/statusbar/NotificationInfo.java index 4dec6c742148..2cf06c2ab33f 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/NotificationInfo.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/NotificationInfo.java @@ -262,17 +262,15 @@ public class NotificationInfo extends LinearLayout implements NotificationGuts.G private boolean hasImportanceChanged() { return mSingleNotificationChannel != null && + mChannelEnabledSwitch != null && mStartingUserImportance != getSelectedImportance(); } private void saveImportance() { - if (mSingleNotificationChannel == null) { - return; - } - int selectedImportance = getSelectedImportance(); - if (selectedImportance == mStartingUserImportance) { + if (!hasImportanceChanged()) { return; } + final int selectedImportance = getSelectedImportance(); MetricsLogger.action(mContext, MetricsEvent.ACTION_SAVE_IMPORTANCE, selectedImportance - mStartingUserImportance); mSingleNotificationChannel.setImportance(selectedImportance); @@ -386,7 +384,7 @@ public class NotificationInfo extends LinearLayout implements NotificationGuts.G @Override public boolean willBeRemoved() { - return !mChannelEnabledSwitch.isChecked(); + return mChannelEnabledSwitch != null && !mChannelEnabledSwitch.isChecked(); } @Override diff --git a/packages/SystemUI/tests/src/com/android/systemui/statusbar/NotificationInfoTest.java b/packages/SystemUI/tests/src/com/android/systemui/statusbar/NotificationInfoTest.java index 907928f12a1c..2b14b3128493 100644 --- a/packages/SystemUI/tests/src/com/android/systemui/statusbar/NotificationInfoTest.java +++ b/packages/SystemUI/tests/src/com/android/systemui/statusbar/NotificationInfoTest.java @@ -778,4 +778,9 @@ public class NotificationInfoTest extends SysuiTestCase { enabledSwitch.setChecked(true); assertEquals(View.VISIBLE, settingsLink.getVisibility()); } + + @Test + public void testWillBeRemovedReturnsFalseBeforeBind() throws Exception { + assertFalse(mNotificationInfo.willBeRemoved()); + } } |