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

Commit 3b6a3ecb authored by Jay Aliomer's avatar Jay Aliomer
Browse files

Notification footer shows when there are zero notifications

Fixes: 191960604
Test: visual
Change-Id: Ib4b41890b6a0eb7e9b445b64c30b500eebc1a52f
parent 920e1fd7
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()) {