Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit dc74de36 authored by Jay Aliomer's avatar Jay Aliomer Committed by Automerger Merge Worker
Browse files

Merge "Notification footer shows when there are zero notifications" into sc-dev am: 5b0cad99

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/15095468

Change-Id: I40150dff0c06a08b431a977a1bd2c3030a51023d
parents c1e105bb 5b0cad99
Loading
Loading
Loading
Loading
+9 −0
Original line number Diff line number Diff line
@@ -25,6 +25,7 @@ import android.view.View;

import com.android.systemui.R;
import com.android.systemui.statusbar.notification.stack.ExpandableViewState;
import com.android.systemui.statusbar.notification.stack.ViewState;

public class FooterView extends StackScrollerDecorView {
    private final int mClearAllTopPadding;
@@ -121,6 +122,14 @@ public class FooterView extends StackScrollerDecorView {
         */
        public boolean hideContent;

        @Override
        public void copyFrom(ViewState viewState) {
            super.copyFrom(viewState);
            if (viewState instanceof FooterViewState) {
                hideContent = ((FooterViewState) viewState).hideContent;
            }
        }

        @Override
        public void applyToView(View view) {
            super.applyToView(view);
+9 −6
Original line number Diff line number Diff line
@@ -399,12 +399,15 @@ public class StackScrollAlgorithm {
        if (view instanceof FooterView) {
            final boolean shadeClosed = !ambientState.isShadeExpanded();
            final boolean isShelfShowing = algorithmState.firstViewInShelf != null;

            if (shadeClosed) {
                viewState.hidden = true;
            } else {
                final float footerEnd = algorithmState.mCurrentExpandedYPosition
                        + view.getIntrinsicHeight();
                final boolean noSpaceForFooter = footerEnd > ambientState.getStackEndHeight();
                ((FooterView.FooterViewState) viewState).hideContent =
                    shadeClosed || isShelfShowing || noSpaceForFooter;
                        isShelfShowing || noSpaceForFooter;
            }
        } else {
            if (view != ambientState.getTrackedHeadsUpRow()) {
                if (ambientState.isExpansionChanging()) {