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

Commit 767aa9b7 authored by Justin Weir's avatar Justin Weir Committed by Android (Google) Code Review
Browse files

Merge "Remove more calls to addFullExpansionListener" into main

parents 366e04f1 b196e1b7
Loading
Loading
Loading
Loading
+0 −9
Original line number Diff line number Diff line
@@ -72,10 +72,6 @@ class ShadeExpansionStateManager @Inject constructor() : ShadeStateEvents {
        listener.onShadeExpansionFullyChanged(qsExpanded)
    }

    fun removeFullExpansionListener(listener: ShadeFullExpansionListener) {
        fullExpansionListeners.remove(listener)
    }

    fun addQsExpansionListener(listener: ShadeQsExpansionListener) {
        qsExpansionListeners.add(listener)
        listener.onQsExpansionChanged(qsExpanded)
@@ -99,11 +95,6 @@ class ShadeExpansionStateManager @Inject constructor() : ShadeStateEvents {
        stateListeners.add(listener)
    }

    /** Removes a state listener. */
    fun removeStateListener(listener: ShadeStateListener) {
        stateListeners.remove(listener)
    }

    override fun addShadeStateEventsListener(listener: ShadeStateEventsListener) {
        shadeStateEventsListeners.addIfAbsent(listener)
    }
+9 −8
Original line number Diff line number Diff line
@@ -34,7 +34,7 @@ import com.android.systemui.statusbar.notification.stack.domain.interactor.Share
import com.android.systemui.statusbar.phone.DozeParameters
import com.android.systemui.statusbar.pipeline.mobile.data.repository.UserSetupRepository
import com.android.systemui.statusbar.policy.data.repository.DeviceProvisioningRepository
import com.android.systemui.user.domain.interactor.UserInteractor
import com.android.systemui.user.data.repository.UserRepository
import com.android.systemui.util.kotlin.pairwise
import javax.inject.Inject
import javax.inject.Provider
@@ -71,7 +71,7 @@ constructor(
    keyguardTransitionInteractor: KeyguardTransitionInteractor,
    powerInteractor: PowerInteractor,
    userSetupRepository: UserSetupRepository,
    userInteractor: UserInteractor,
    userRepository: UserRepository,
    sharedNotificationContainerInteractor: SharedNotificationContainerInteractor,
    repository: ShadeRepository,
) {
@@ -156,12 +156,13 @@ constructor(
     *
     * TODO(b/300258424) remove all but the first sentence of this comment
     */
    val isAnyExpanded: Flow<Boolean> =
    val isAnyExpanded: StateFlow<Boolean> =
        if (sceneContainerFlags.isEnabled()) {
                anyExpansion.map { it > 0f }.distinctUntilChanged()
            } else {
                repository.legacyExpandedOrAwaitingInputTransfer
            }
            .stateIn(scope, SharingStarted.Eagerly, false)

    /**
     * Whether the user is expanding or collapsing the shade with user input. This will be true even
@@ -227,7 +228,7 @@ constructor(
            isDeviceProvisioned &&
                // Disallow QS during setup if it's a simple user switcher. (The user intends to
                // use the lock screen user switcher, QS is not needed.)
                (isUserSetup || !userInteractor.isSimpleUserSwitcher) &&
                (isUserSetup || !userRepository.isSimpleUserSwitcher()) &&
                isShadeEnabled &&
                disableFlags.isQuickSettingsEnabled() &&
                !isDozing
+11 −7
Original line number Diff line number Diff line
@@ -18,6 +18,7 @@ package com.android.systemui.statusbar;

import static com.android.internal.jank.InteractionJankMonitor.CUJ_LOCKSCREEN_TRANSITION_FROM_AOD;
import static com.android.internal.jank.InteractionJankMonitor.CUJ_LOCKSCREEN_TRANSITION_TO_AOD;
import static com.android.systemui.util.kotlin.JavaAdapterKt.collectFlow;

import android.animation.Animator;
import android.animation.AnimatorListenerAdapter;
@@ -43,15 +44,17 @@ import com.android.internal.logging.UiEventLogger;
import com.android.keyguard.KeyguardClockSwitch;
import com.android.systemui.DejankUtils;
import com.android.systemui.Dumpable;
import com.android.systemui.res.R;
import com.android.systemui.dagger.SysUISingleton;
import com.android.systemui.dump.DumpManager;
import com.android.systemui.plugins.statusbar.StatusBarStateController.StateListener;
import com.android.systemui.shade.ShadeExpansionStateManager;
import com.android.systemui.res.R;
import com.android.systemui.shade.domain.interactor.ShadeInteractor;
import com.android.systemui.statusbar.notification.stack.StackStateAnimator;
import com.android.systemui.statusbar.policy.CallbackController;
import com.android.systemui.util.Compile;

import dagger.Lazy;

import java.io.PrintWriter;
import java.util.ArrayList;
import java.util.Comparator;
@@ -95,6 +98,7 @@ public class StatusBarStateControllerImpl implements
    private final ArrayList<RankedListener> mListeners = new ArrayList<>();
    private final UiEventLogger mUiEventLogger;
    private final InteractionJankMonitor mInteractionJankMonitor;
    private final Lazy<ShadeInteractor> mShadeInteractorLazy;
    private int mState;
    private int mLastState;
    private int mUpcomingState;
@@ -158,15 +162,13 @@ public class StatusBarStateControllerImpl implements
            UiEventLogger uiEventLogger,
            DumpManager dumpManager,
            InteractionJankMonitor interactionJankMonitor,
            ShadeExpansionStateManager shadeExpansionStateManager
    ) {
            Lazy<ShadeInteractor> shadeInteractorLazy) {
        mUiEventLogger = uiEventLogger;
        mInteractionJankMonitor = interactionJankMonitor;
        mShadeInteractorLazy = shadeInteractorLazy;
        for (int i = 0; i < HISTORY_SIZE; i++) {
            mHistoricalRecords[i] = new HistoricalState();
        }
        shadeExpansionStateManager.addFullExpansionListener(this::onShadeExpansionFullyChanged);

        dumpManager.registerDumpable(this);
    }

@@ -336,6 +338,8 @@ public class StatusBarStateControllerImpl implements
                && (view != null && view.isAttachedToWindow())) {
            mView = view;
            mClockSwitchView = view.findViewById(R.id.keyguard_clock_container);
            collectFlow(mView, mShadeInteractorLazy.get().isAnyExpanded(),
                    this::onShadeOrQsExpanded);
        }
        mDozeAmountTarget = dozeAmount;
        if (animated) {
@@ -345,7 +349,7 @@ public class StatusBarStateControllerImpl implements
        }
    }

    private void onShadeExpansionFullyChanged(Boolean isExpanded) {
    private void onShadeOrQsExpanded(Boolean isExpanded) {
        if (mIsExpanded != isExpanded) {
            mIsExpanded = isExpanded;
            String tag = getClass().getSimpleName() + "#setIsExpanded";
+5 −0
Original line number Diff line number Diff line
@@ -180,4 +180,9 @@ public interface NotificationInterruptStateProvider {
     * Add a component that can suppress visual interruptions.
     */
    void addSuppressor(NotificationInterruptSuppressor suppressor);

    /**
     * Remove a component that can suppress visual interruptions.
     */
    void removeSuppressor(NotificationInterruptSuppressor suppressor);
}
+5 −0
Original line number Diff line number Diff line
@@ -174,6 +174,11 @@ public class NotificationInterruptStateProviderImpl implements NotificationInter
        mSuppressors.add(suppressor);
    }

    @Override
    public void removeSuppressor(NotificationInterruptSuppressor suppressor) {
        mSuppressors.remove(suppressor);
    }

    @Override
    public boolean shouldBubbleUp(NotificationEntry entry) {
        final StatusBarNotification sbn = entry.getSbn();
Loading