diff options
| -rw-r--r-- | packages/SystemUI/src/com/android/systemui/statusbar/NotificationEntryManager.java | 12 | 
1 files changed, 9 insertions, 3 deletions
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/NotificationEntryManager.java b/packages/SystemUI/src/com/android/systemui/statusbar/NotificationEntryManager.java index 06f26c9cbc7c..469c3c2c60b1 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/NotificationEntryManager.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/NotificationEntryManager.java @@ -667,9 +667,15 @@ public class NotificationEntryManager implements Dumpable, NotificationInflater.                      entry.row.getNotificationChildren();              for (int i = 0; i < notificationChildren.size(); i++) {                  ExpandableNotificationRow row = notificationChildren.get(i); -                if ((row.getStatusBarNotification().getNotification().flags -                        & Notification.FLAG_FOREGROUND_SERVICE) != 0) { -                    // the child is a foreground service notification which we can't remove! +                NotificationData.Entry childEntry = row.getEntry(); +                boolean isForeground = (row.getStatusBarNotification().getNotification().flags +                        & Notification.FLAG_FOREGROUND_SERVICE) != 0; +                boolean keepForReply = FORCE_REMOTE_INPUT_HISTORY +                        && (shouldKeepForRemoteInput(childEntry) +                                || shouldKeepForSmartReply(childEntry)); +                if (isForeground || keepForReply) { +                    // the child is a foreground service notification which we can't remove or it's +                    // a child we're keeping around for reply!                      continue;                  }                  row.setKeepInParent(true);  |