Merge "Animate notification shade footer" into sc-dev
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/FooterView.java b/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/FooterView.java
index 298d4f0..8e24890 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/FooterView.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/FooterView.java
@@ -115,13 +115,18 @@
}
public class FooterViewState extends ExpandableViewState {
+ /**
+ * used to hide the content of the footer to animate.
+ * #hide is applied without animation, but #hideContent has animation.
+ */
+ public boolean hideContent;
+
@Override
public void applyToView(View view) {
super.applyToView(view);
if (view instanceof FooterView) {
FooterView footerView = (FooterView) view;
- boolean visible = this.clipTopAmount < mClearAllTopPadding;
- footerView.setContentVisible(visible && footerView.isVisible());
+ footerView.setContentVisible(!hideContent);
}
}
}
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 a02ebbf..e5fd103 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
@@ -411,8 +411,8 @@
final float footerEnd = algorithmState.mCurrentExpandedYPosition
+ view.getIntrinsicHeight();
final boolean noSpaceForFooter = footerEnd > ambientState.getStackEndHeight();
-
- viewState.hidden = shadeClosed || isShelfShowing || noSpaceForFooter;
+ ((FooterView.FooterViewState) viewState).hideContent =
+ shadeClosed || isShelfShowing || noSpaceForFooter;
} else if (view != ambientState.getTrackedHeadsUpRow()) {
if (ambientState.isExpansionChanging()) {