Merge "Fixes background animation on dismiss."
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/NotificationStackScrollLayout.java b/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/NotificationStackScrollLayout.java
index 5153b11..ecd0d98 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/NotificationStackScrollLayout.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/NotificationStackScrollLayout.java
@@ -2768,6 +2768,10 @@
     private void updateFirstAndLastBackgroundViews() {
         NotificationSection firstSection = getFirstVisibleSection();
         NotificationSection lastSection = getLastVisibleSection();
+        ActivatableNotificationView previousFirstChild =
+                firstSection == null ? null : firstSection.getFirstVisibleChild();
+        ActivatableNotificationView previousLastChild =
+                lastSection == null ? null : lastSection.getLastVisibleChild();
 
         ActivatableNotificationView firstChild = getFirstChildWithBackground();
         ActivatableNotificationView lastChild = getLastChildWithBackground();
@@ -2775,10 +2779,8 @@
                 mSections[0], mSections[1], firstChild, lastChild);
 
         if (mAnimationsEnabled && mIsExpanded) {
-            mAnimateNextBackgroundTop =
-                    firstSection == null || firstChild != firstSection.getFirstVisibleChild();
-            mAnimateNextBackgroundBottom =
-                    lastSection == null || lastChild != lastSection.getLastVisibleChild();
+            mAnimateNextBackgroundTop = firstChild != previousFirstChild;
+            mAnimateNextBackgroundBottom = lastChild != previousLastChild;
             mAnimateNextSectionBoundsChange = sectionViewsChanged;
         } else {
             mAnimateNextBackgroundTop = false;