Only clipping heads up that are not the first ones

Previously we would clip even the first heads up
notification which would lead to the notification being
clipped. This would happen if a notification would be
before the first heads up which could happen temporarily.

Fixes: 	138467810
Test: Add 2 heads up notifications that are not dismissable, swipe away the first, observe no clipping
Change-Id: I13f681a0a09a9de8e948fb666ee99718df3bae02
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/StackScrollAlgorithm.java b/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/StackScrollAlgorithm.java
index 7655056..ef80484 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/StackScrollAlgorithm.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/StackScrollAlgorithm.java
@@ -161,6 +161,7 @@
                 : 0;
         float clipStart = 0;
         int childCount = algorithmState.visibleChildren.size();
+        boolean firstHeadsUp = true;
         for (int i = 0; i < childCount; i++) {
             ExpandableView child = algorithmState.visibleChildren.get(i);
             ExpandableViewState state = child.getViewState();
@@ -173,7 +174,7 @@
             boolean isHeadsUp = (child instanceof ExpandableNotificationRow)
                     && ((ExpandableNotificationRow) child).isPinned();
             if (mClipNotificationScrollToTop
-                    && (!state.inShelf || isHeadsUp)
+                    && (!state.inShelf || (isHeadsUp && !firstHeadsUp))
                     && newYTranslation < clipStart) {
                 // The previous view is overlapping on top, clip!
                 float overlapAmount = clipStart - newYTranslation;
@@ -181,7 +182,9 @@
             } else {
                 state.clipTopAmount = 0;
             }
-
+            if (isHeadsUp) {
+                firstHeadsUp = false;
+            }
             if (!child.isTransparent()) {
                 // Only update the previous values if we are not transparent,
                 // otherwise we would clip to a transparent view.