Merge "Animate notification shade footer" into sc-dev am: adc3f0b6c1
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/14948801 Change-Id: I5dac0131b416025031edfe1bfc7d7893562f21e5
This commit is contained in:
@@ -115,13 +115,18 @@ public class FooterView extends StackScrollerDecorView {
|
||||
}
|
||||
|
||||
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);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -411,8 +411,8 @@ public class StackScrollAlgorithm {
|
||||
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()) {
|
||||
|
||||
Reference in New Issue
Block a user