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

Commit 71588f71 authored by Jeff DeCew's avatar Jeff DeCew Committed by Automerger Merge Worker
Browse files

Merge "Use correct stack height when bypass enabled." into sc-dev am: 44cd9995

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

Change-Id: I9057c9d59239eb42a53c07a8f53e4b382a72b91b
parents f1d2441d 44cd9995
Loading
Loading
Loading
Loading
+0 −9
Original line number Diff line number Diff line
@@ -153,15 +153,6 @@ public class AmbientState {
        return mStackHeight;
    }

    /**
     * @return Height of notifications panel, with the animation from pulseHeight accounted for.
     */
    // TODO(b/192348384): move this logic to getStackHeight, and remove this and getInnerHeight
    public float getPulseStackHeight() {
        float pulseHeight = Math.min(mPulseHeight, mStackHeight);
        return MathUtils.lerp(mStackHeight, pulseHeight, mDozeAmount);
    }

    /** Tracks the state from AlertingNotificationManager#hasNotifications() */
    private boolean mHasAlertEntries;

+10 −13
Original line number Diff line number Diff line
@@ -447,19 +447,16 @@ public class StackScrollAlgorithm {
                    // to shelf start, thereby hiding all notifications (except the first one, which
                    // we later unhide in updatePulsingState)
                    // TODO(b/192348384): merge InnerHeight with StackHeight
                    final int stackBottom;
                    if (ambientState.isBypassEnabled()) {
                        // We want to use the stackHeight when pulse expanding, since the animation
                        // isn't currently optimized if the pulseHeight is continuously changing
                        // Let's improve this when we're merging the heights above
                        stackBottom = ambientState.isPulseExpanding()
                                ? (int) ambientState.getStackHeight()
                                : ambientState.getInnerHeight();
                    } else {
                        stackBottom = !ambientState.isShadeExpanded() || ambientState.isDozing()
                    // Note: Bypass pulse looks different, but when it is not expanding, we need
                    //  to use the innerHeight which doesn't update continuously, otherwise we show
                    //  more notifications than we should during this special transitional states.
                    boolean bypassPulseNotExpanding = ambientState.isBypassEnabled()
                            && ambientState.isOnKeyguard() && !ambientState.isPulseExpanding();
                    final int stackBottom =
                            !ambientState.isShadeExpanded() || ambientState.isDozing()
                                    || bypassPulseNotExpanding
                                    ? ambientState.getInnerHeight()
                                        : (int) ambientState.getPulseStackHeight();
                    }
                                    : (int) ambientState.getStackHeight();
                    final int shelfStart =
                            stackBottom - ambientState.getShelf().getIntrinsicHeight();
                    viewState.yTranslation = Math.min(viewState.yTranslation, shelfStart);