summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--packages/SystemUI/src/com/android/systemui/statusbar/notification/row/NotificationConversationInfo.java8
-rw-r--r--packages/SystemUI/tests/src/com/android/systemui/statusbar/notification/row/NotificationConversationInfoTest.java3
2 files changed, 9 insertions, 2 deletions
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/NotificationConversationInfo.java b/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/NotificationConversationInfo.java
index bcc81a8b967f..23b911b6f687 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/NotificationConversationInfo.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/NotificationConversationInfo.java
@@ -88,8 +88,8 @@ public class NotificationConversationInfo extends LinearLayout implements
private INotificationManager mINotificationManager;
ShortcutManager mShortcutManager;
private PackageManager mPm;
- private VisualStabilityManager mVisualStabilityManager;
private ConversationIconFactory mIconFactory;
+ private VisualStabilityManager mVisualStabilityManager;
private String mPackageName;
private String mAppName;
@@ -108,7 +108,9 @@ public class NotificationConversationInfo extends LinearLayout implements
private TextView mPriorityDescriptionView;
private TextView mDefaultDescriptionView;
private TextView mSilentDescriptionView;
+
private @Action int mSelectedAction = -1;
+ private boolean mPressedApply;
private OnSnoozeClickListener mOnSnoozeClickListener;
private OnSettingsClickListener mOnSettingsClickListener;
@@ -160,6 +162,7 @@ public class NotificationConversationInfo extends LinearLayout implements
};
private OnClickListener mOnDone = v -> {
+ mPressedApply = true;
closeControls(v, true);
};
@@ -521,6 +524,7 @@ public class NotificationConversationInfo extends LinearLayout implements
bgHandler.post(
new UpdateChannelRunnable(mINotificationManager, mPackageName,
mAppUid, mSelectedAction, mNotificationChannel));
+ mVisualStabilityManager.temporarilyAllowReordering();
}
private boolean shouldShowPriorityOnboarding() {
@@ -587,7 +591,7 @@ public class NotificationConversationInfo extends LinearLayout implements
@Override
public boolean shouldBeSaved() {
- return mSelectedAction == ACTION_FAVORITE || mSelectedAction == ACTION_MUTE;
+ return mPressedApply;
}
@Override
diff --git a/packages/SystemUI/tests/src/com/android/systemui/statusbar/notification/row/NotificationConversationInfoTest.java b/packages/SystemUI/tests/src/com/android/systemui/statusbar/notification/row/NotificationConversationInfoTest.java
index 6db868563d3d..3847028a25df 100644
--- a/packages/SystemUI/tests/src/com/android/systemui/statusbar/notification/row/NotificationConversationInfoTest.java
+++ b/packages/SystemUI/tests/src/com/android/systemui/statusbar/notification/row/NotificationConversationInfoTest.java
@@ -597,6 +597,7 @@ public class NotificationConversationInfoTest extends SysuiTestCase {
.isEqualTo(GONE);
// no changes until hit done
+ assertFalse(mNotificationInfo.shouldBeSaved());
verify(mMockINotificationManager, never()).updateNotificationChannelForPackage(
anyString(), anyInt(), any());
assertFalse(mConversationChannel.isImportantConversation());
@@ -637,6 +638,7 @@ public class NotificationConversationInfoTest extends SysuiTestCase {
.isEqualTo(GONE);
// no changes until hit done
+ assertFalse(mNotificationInfo.shouldBeSaved());
verify(mMockINotificationManager, never()).updateNotificationChannelForPackage(
anyString(), anyInt(), any());
assertFalse(mConversationChannel.isImportantConversation());
@@ -679,6 +681,7 @@ public class NotificationConversationInfoTest extends SysuiTestCase {
.isEqualTo(VISIBLE);
// no changes until save
+ assertFalse(mNotificationInfo.shouldBeSaved());
verify(mMockINotificationManager, never()).updateNotificationChannelForPackage(
anyString(), anyInt(), any());
assertEquals(IMPORTANCE_DEFAULT, mConversationChannel.getImportance());