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

Commit 39a5078b authored by Jeff DeCew's avatar Jeff DeCew Committed by Android (Google) Code Review
Browse files

Merge "[flexiglass] Fix NSSL alpha during HUN" into main

parents 8a625b66 2df7152d
Loading
Loading
Loading
Loading
+11 −5
Original line number Original line Diff line number Diff line
@@ -1198,7 +1198,8 @@ public final class NotificationPanelViewController implements ShadeSurface, Dump
                            /* excludeNotifications=*/ true), mMainDispatcher);
                            /* excludeNotifications=*/ true), mMainDispatcher);
            collectFlow(mView, mPrimaryBouncerToGoneTransitionViewModel.getNotificationAlpha(),
            collectFlow(mView, mPrimaryBouncerToGoneTransitionViewModel.getNotificationAlpha(),
                    (Float alpha) -> {
                    (Float alpha) -> {
                        mNotificationStackScrollLayoutController.setMaxAlphaForExpansion(alpha);
                        mNotificationStackScrollLayoutController.setMaxAlphaForKeyguard(alpha,
                                "mPrimaryBouncerToGoneTransitionViewModel.getNotificationAlpha()");
                    }, mMainDispatcher);
                    }, mMainDispatcher);
        }
        }
    }
    }
@@ -2718,7 +2719,8 @@ public final class NotificationPanelViewController implements ShadeSurface, Dump
                && !mQsController.getFullyExpanded()) {
                && !mQsController.getFullyExpanded()) {
                alpha *= mClockPositionResult.clockAlpha;
                alpha *= mClockPositionResult.clockAlpha;
            }
            }
            mNotificationStackScrollLayoutController.setMaxAlphaForExpansion(alpha);
            mNotificationStackScrollLayoutController.setMaxAlphaForKeyguard(alpha,
                    "NPVC.updateNotificationTranslucency()");
        }
        }
    }
    }


@@ -2769,7 +2771,9 @@ public final class NotificationPanelViewController implements ShadeSurface, Dump
    }
    }


    private void onExpandingFinished() {
    private void onExpandingFinished() {
        if (!SceneContainerFlag.isEnabled()) {
            mNotificationStackScrollLayoutController.onExpansionStopped();
            mNotificationStackScrollLayoutController.onExpansionStopped();
        }
        mHeadsUpManager.onExpandingFinished();
        mHeadsUpManager.onExpandingFinished();
        mConversationNotificationManager.onNotificationPanelExpandStateChanged(isFullyCollapsed());
        mConversationNotificationManager.onNotificationPanelExpandStateChanged(isFullyCollapsed());
        mIsExpandingOrCollapsing = false;
        mIsExpandingOrCollapsing = false;
@@ -3084,7 +3088,9 @@ public final class NotificationPanelViewController implements ShadeSurface, Dump
            // The expandedHeight is always the full panel Height when bypassing
            // The expandedHeight is always the full panel Height when bypassing
            expandedHeight = getMaxPanelHeight();
            expandedHeight = getMaxPanelHeight();
        }
        }
        if (!SceneContainerFlag.isEnabled()) {
            mNotificationStackScrollLayoutController.setExpandedHeight(expandedHeight);
            mNotificationStackScrollLayoutController.setExpandedHeight(expandedHeight);
        }
        updateKeyguardBottomAreaAlpha();
        updateKeyguardBottomAreaAlpha();
        updateStatusBarIcons();
        updateStatusBarIcons();
    }
    }
@@ -4731,7 +4737,7 @@ public final class NotificationPanelViewController implements ShadeSurface, Dump
        return (Float alpha) -> {
        return (Float alpha) -> {
            mKeyguardStatusViewController.setAlpha(alpha);
            mKeyguardStatusViewController.setAlpha(alpha);
            if (!excludeNotifications) {
            if (!excludeNotifications) {
                stackScroller.setMaxAlphaForExpansion(alpha);
                stackScroller.setMaxAlphaForKeyguard(alpha, "NPVC.setTransitionAlpha()");
            }
            }


            if (keyguardBottomAreaRefactor()) {
            if (keyguardBottomAreaRefactor()) {
+7 −2
Original line number Original line Diff line number Diff line
@@ -76,6 +76,7 @@ import com.android.systemui.media.controls.ui.controller.MediaHierarchyManager;
import com.android.systemui.plugins.FalsingManager;
import com.android.systemui.plugins.FalsingManager;
import com.android.systemui.plugins.qs.QS;
import com.android.systemui.plugins.qs.QS;
import com.android.systemui.res.R;
import com.android.systemui.res.R;
import com.android.systemui.scene.shared.flag.SceneContainerFlag;
import com.android.systemui.screenrecord.RecordingController;
import com.android.systemui.screenrecord.RecordingController;
import com.android.systemui.shade.data.repository.ShadeRepository;
import com.android.systemui.shade.data.repository.ShadeRepository;
import com.android.systemui.shade.domain.interactor.ShadeInteractor;
import com.android.systemui.shade.domain.interactor.ShadeInteractor;
@@ -964,7 +965,9 @@ public class QuickSettingsControllerImpl implements QuickSettingsController, Dum
        // Reset scroll position and apply that position to the expanded height.
        // Reset scroll position and apply that position to the expanded height.
        float height = mExpansionHeight;
        float height = mExpansionHeight;
        setExpansionHeight(height);
        setExpansionHeight(height);
        if (!SceneContainerFlag.isEnabled()) {
            mNotificationStackScrollLayoutController.checkSnoozeLeavebehind();
            mNotificationStackScrollLayoutController.checkSnoozeLeavebehind();
        }


        // When expanding QS, let's authenticate the user if possible,
        // When expanding QS, let's authenticate the user if possible,
        // this will speed up notification actions.
        // this will speed up notification actions.
@@ -1109,7 +1112,9 @@ public class QuickSettingsControllerImpl implements QuickSettingsController, Dum


    /** Called when shade starts expanding. */
    /** Called when shade starts expanding. */
    void onExpandingStarted(boolean qsFullyExpanded) {
    void onExpandingStarted(boolean qsFullyExpanded) {
        if (!SceneContainerFlag.isEnabled()) {
            mNotificationStackScrollLayoutController.onExpansionStarted();
            mNotificationStackScrollLayoutController.onExpansionStarted();
        }
        mExpandedWhenExpandingStarted = qsFullyExpanded;
        mExpandedWhenExpandingStarted = qsFullyExpanded;
        mMediaHierarchyManager.setCollapsingShadeFromQS(mExpandedWhenExpandingStarted
        mMediaHierarchyManager.setCollapsingShadeFromQS(mExpandedWhenExpandingStarted
                /* We also start expanding when flinging closed Qs. Let's exclude that */
                /* We also start expanding when flinging closed Qs. Let's exclude that */
+12 −5
Original line number Original line Diff line number Diff line
@@ -363,7 +363,8 @@ public class NotificationStackScrollLayoutController implements Dumpable {
    };
    };


    private NotifStats mNotifStats = NotifStats.getEmpty();
    private NotifStats mNotifStats = NotifStats.getEmpty();
    private float mMaxAlphaForExpansion = 1.0f;
    private float mMaxAlphaForKeyguard = 1.0f;
    private String mMaxAlphaForKeyguardSource = "constructor";
    private float mMaxAlphaForUnhide = 1.0f;
    private float mMaxAlphaForUnhide = 1.0f;


    /**
    /**
@@ -1320,9 +1321,14 @@ public class NotificationStackScrollLayoutController implements Dumpable {
        return mView.getEmptyShadeViewHeight();
        return mView.getEmptyShadeViewHeight();
    }
    }


    public void setMaxAlphaForExpansion(float alpha) {
    /** Set the max alpha for keyguard */
        mMaxAlphaForExpansion = alpha;
    public void setMaxAlphaForKeyguard(float alpha, String source) {
        mMaxAlphaForKeyguard = alpha;
        mMaxAlphaForKeyguardSource = source;
        updateAlpha();
        updateAlpha();
        if (DEBUG) {
            Log.d(TAG, "setMaxAlphaForKeyguard=" + alpha + " --- from: " + source);
        }
    }
    }


    private void setMaxAlphaForUnhide(float alpha) {
    private void setMaxAlphaForUnhide(float alpha) {
@@ -1341,7 +1347,7 @@ public class NotificationStackScrollLayoutController implements Dumpable {


    private void updateAlpha() {
    private void updateAlpha() {
        if (mView != null) {
        if (mView != null) {
            mView.setAlpha(Math.min(mMaxAlphaForExpansion,
            mView.setAlpha(Math.min(mMaxAlphaForKeyguard,
                    Math.min(mMaxAlphaForUnhide, mMaxAlphaForGlanceableHub)));
                    Math.min(mMaxAlphaForUnhide, mMaxAlphaForGlanceableHub)));
        }
        }
    }
    }
@@ -1831,9 +1837,10 @@ public class NotificationStackScrollLayoutController implements Dumpable {


    @Override
    @Override
    public void dump(@NonNull PrintWriter pw, @NonNull String[] args) {
    public void dump(@NonNull PrintWriter pw, @NonNull String[] args) {
        pw.println("mMaxAlphaForExpansion=" + mMaxAlphaForExpansion);
        pw.println("mMaxAlphaForUnhide=" + mMaxAlphaForUnhide);
        pw.println("mMaxAlphaForUnhide=" + mMaxAlphaForUnhide);
        pw.println("mMaxAlphaForGlanceableHub=" + mMaxAlphaForGlanceableHub);
        pw.println("mMaxAlphaForGlanceableHub=" + mMaxAlphaForGlanceableHub);
        pw.println("mMaxAlphaForKeyguard=" + mMaxAlphaForKeyguard);
        pw.println("mMaxAlphaForKeyguardSource=" + mMaxAlphaForKeyguardSource);
    }
    }


    /**
    /**
+7 −4
Original line number Original line Diff line number Diff line
@@ -66,15 +66,18 @@ object NotificationStackAppearanceViewBinder {
                }
                }


                launch {
                launch {
                    var wasExpanding = false
                    viewModel.expandFraction.collect { expandFraction ->
                    viewModel.expandFraction.collect { expandFraction ->
                        val nowExpanding = expandFraction != 0f && expandFraction != 1f
                        if (nowExpanding && !wasExpanding) {
                            controller.onExpansionStarted()
                        }
                        ambientState.expansionFraction = expandFraction
                        ambientState.expansionFraction = expandFraction
                        controller.expandedHeight = expandFraction * controller.view.height
                        controller.expandedHeight = expandFraction * controller.view.height
                        controller.setMaxAlphaForExpansion(
                        if (!nowExpanding && wasExpanding) {
                            ((expandFraction - 0.5f) / 0.5f).coerceAtLeast(0f)
                        )
                        if (expandFraction == 0f || expandFraction == 1f) {
                            controller.onExpansionStopped()
                            controller.onExpansionStopped()
                        }
                        }
                        wasExpanding = nowExpanding
                    }
                    }
                }
                }
            }
            }
+22 −24
Original line number Original line Diff line number Diff line
@@ -106,7 +106,6 @@ object SharedNotificationContainerBinder {
        val disposableHandleMainImmediate =
        val disposableHandleMainImmediate =
            view.repeatWhenAttached(mainImmediateDispatcher) {
            view.repeatWhenAttached(mainImmediateDispatcher) {
                repeatOnLifecycle(Lifecycle.State.CREATED) {
                repeatOnLifecycle(Lifecycle.State.CREATED) {
                    if (!sceneContainerFlags.flexiNotifsEnabled()) {
                    launch {
                    launch {
                        // Only temporarily needed, until flexi notifs go live
                        // Only temporarily needed, until flexi notifs go live
                        viewModel.shadeCollapseFadeIn.collect { fadeIn ->
                        viewModel.shadeCollapseFadeIn.collect { fadeIn ->
@@ -114,8 +113,9 @@ object SharedNotificationContainerBinder {
                                android.animation.ValueAnimator.ofFloat(0f, 1f).apply {
                                android.animation.ValueAnimator.ofFloat(0f, 1f).apply {
                                    duration = 250
                                    duration = 250
                                    addUpdateListener { animation ->
                                    addUpdateListener { animation ->
                                            controller.setMaxAlphaForExpansion(
                                        controller.setMaxAlphaForKeyguard(
                                                animation.getAnimatedFraction()
                                            animation.animatedFraction,
                                            "SharedNotificationContainerVB (collapseFadeIn)"
                                        )
                                        )
                                    }
                                    }
                                    addListener(
                                    addListener(
@@ -130,7 +130,6 @@ object SharedNotificationContainerBinder {
                            }
                            }
                        }
                        }
                    }
                    }
                    }


                    launch {
                    launch {
                        viewModel
                        viewModel
@@ -164,13 +163,12 @@ object SharedNotificationContainerBinder {


                    launch { viewModel.translationX.collect { x -> controller.translationX = x } }
                    launch { viewModel.translationX.collect { x -> controller.translationX = x } }


                    if (!sceneContainerFlags.isEnabled()) {
                    launch {
                    launch {
                            viewModel.expansionAlpha(viewState).collect {
                        viewModel.keyguardAlpha(viewState).collect {
                                controller.setMaxAlphaForExpansion(it)
                            controller.setMaxAlphaForKeyguard(it, "SharedNotificationContainerVB")
                            }
                        }
                        }
                    }
                    }

                    launch {
                    launch {
                        viewModel.glanceableHubAlpha.collect {
                        viewModel.glanceableHubAlpha.collect {
                            controller.setMaxAlphaForGlanceableHub(it)
                            controller.setMaxAlphaForGlanceableHub(it)
Loading