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

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

Merge "Delete ShadeTransitionController" into main

parents ab8057b9 a41b6b71
Loading
Loading
Loading
Loading
+0 −3
Original line number Diff line number Diff line
@@ -169,7 +169,6 @@ import com.android.systemui.scene.shared.flag.SceneContainerFlag;
import com.android.systemui.shade.data.repository.FlingInfo;
import com.android.systemui.shade.data.repository.ShadeRepository;
import com.android.systemui.shade.domain.interactor.ShadeAnimationInteractor;
import com.android.systemui.shade.transition.ShadeTransitionController;
import com.android.systemui.shared.system.QuickStepContract;
import com.android.systemui.statusbar.CommandQueue;
import com.android.systemui.statusbar.GestureRecorder;
@@ -746,7 +745,6 @@ public final class NotificationPanelViewController implements ShadeSurface, Dump
            NotificationListContainer notificationListContainer,
            NotificationStackSizeCalculator notificationStackSizeCalculator,
            UnlockedScreenOffAnimationController unlockedScreenOffAnimationController,
            ShadeTransitionController shadeTransitionController,
            SystemClock systemClock,
            KeyguardBottomAreaViewModel keyguardBottomAreaViewModel,
            KeyguardBottomAreaInteractor keyguardBottomAreaInteractor,
@@ -903,7 +901,6 @@ public final class NotificationPanelViewController implements ShadeSurface, Dump
        mKeyguardBypassController = bypassController;
        mUpdateMonitor = keyguardUpdateMonitor;
        mLockscreenShadeTransitionController = lockscreenShadeTransitionController;
        shadeTransitionController.setShadeViewController(this);
        dynamicPrivacyController.addListener(this::onDynamicPrivacyChanged);
        quickSettingsController.setExpansionHeightListener(this::onQsSetExpansionHeightCalled);
        quickSettingsController.setQsStateUpdateListener(this::onQsStateUpdated);
+0 −12
Original line number Diff line number Diff line
@@ -62,7 +62,6 @@ import com.android.internal.logging.MetricsLogger;
import com.android.internal.logging.nano.MetricsProto;
import com.android.internal.policy.ScreenDecorationsUtils;
import com.android.internal.policy.SystemBarUtils;
import com.android.keyguard.KeyguardUpdateMonitor;
import com.android.systemui.DejankUtils;
import com.android.systemui.Dumpable;
import com.android.systemui.classifier.Classifier;
@@ -80,7 +79,6 @@ import com.android.systemui.scene.shared.flag.SceneContainerFlag;
import com.android.systemui.screenrecord.RecordingController;
import com.android.systemui.shade.data.repository.ShadeRepository;
import com.android.systemui.shade.domain.interactor.ShadeInteractor;
import com.android.systemui.shade.transition.ShadeTransitionController;
import com.android.systemui.shared.system.QuickStepContract;
import com.android.systemui.statusbar.LockscreenShadeTransitionController;
import com.android.systemui.statusbar.NotificationRemoteInputManager;
@@ -133,9 +131,7 @@ public class QuickSettingsControllerImpl implements QuickSettingsController, Dum
    private final FrameLayout mQsFrame;

    private final QsFrameTranslateController mQsFrameTranslateController;
    private final ShadeTransitionController mShadeTransitionController;
    private final PulseExpansionHandler mPulseExpansionHandler;
    private final ShadeExpansionStateManager mShadeExpansionStateManager;
    private final StatusBarKeyguardViewManager mStatusBarKeyguardViewManager;
    private final LightBarController mLightBarController;
    private final NotificationStackScrollLayoutController mNotificationStackScrollLayoutController;
@@ -147,7 +143,6 @@ public class QuickSettingsControllerImpl implements QuickSettingsController, Dum
    private final KeyguardBypassController mKeyguardBypassController;
    private final NotificationRemoteInputManager mRemoteInputManager;
    private VelocityTracker mQsVelocityTracker;
    private final KeyguardUpdateMonitor mKeyguardUpdateMonitor;
    private final ScrimController mScrimController;
    private final MediaDataManager mMediaDataManager;
    private final MediaHierarchyManager mMediaHierarchyManager;
@@ -309,10 +304,8 @@ public class QuickSettingsControllerImpl implements QuickSettingsController, Dum
            Lazy<NotificationPanelViewController> panelViewControllerLazy,
            NotificationPanelView panelView,
            QsFrameTranslateController qsFrameTranslateController,
            ShadeTransitionController shadeTransitionController,
            PulseExpansionHandler pulseExpansionHandler,
            NotificationRemoteInputManager remoteInputManager,
            ShadeExpansionStateManager shadeExpansionStateManager,
            StatusBarKeyguardViewManager statusBarKeyguardViewManager,
            LightBarController lightBarController,
            NotificationStackScrollLayoutController notificationStackScrollLayoutController,
@@ -322,7 +315,6 @@ public class QuickSettingsControllerImpl implements QuickSettingsController, Dum
            StatusBarTouchableRegionManager statusBarTouchableRegionManager,
            KeyguardStateController keyguardStateController,
            KeyguardBypassController keyguardBypassController,
            KeyguardUpdateMonitor keyguardUpdateMonitor,
            ScrimController scrimController,
            MediaDataManager mediaDataManager,
            MediaHierarchyManager mediaHierarchyManager,
@@ -353,7 +345,6 @@ public class QuickSettingsControllerImpl implements QuickSettingsController, Dum
        mSplitShadeStateController = splitShadeStateController;
        mSplitShadeEnabled = mSplitShadeStateController.shouldUseSplitNotificationShade(mResources);
        mQsFrameTranslateController = qsFrameTranslateController;
        mShadeTransitionController = shadeTransitionController;
        mPulseExpansionHandler = pulseExpansionHandler;
        pulseExpansionHandler.setPulseExpandAbortListener(() -> {
            if (mQs != null) {
@@ -361,7 +352,6 @@ public class QuickSettingsControllerImpl implements QuickSettingsController, Dum
            }
        });
        mRemoteInputManager = remoteInputManager;
        mShadeExpansionStateManager = shadeExpansionStateManager;
        mStatusBarKeyguardViewManager = statusBarKeyguardViewManager;
        mLightBarController = lightBarController;
        mNotificationStackScrollLayoutController = notificationStackScrollLayoutController;
@@ -371,7 +361,6 @@ public class QuickSettingsControllerImpl implements QuickSettingsController, Dum
        mStatusBarTouchableRegionManager = statusBarTouchableRegionManager;
        mKeyguardStateController = keyguardStateController;
        mKeyguardBypassController = keyguardBypassController;
        mKeyguardUpdateMonitor = keyguardUpdateMonitor;
        mScrimController = scrimController;
        mMediaDataManager = mediaDataManager;
        mMediaHierarchyManager = mediaHierarchyManager;
@@ -2180,7 +2169,6 @@ public class QuickSettingsControllerImpl implements QuickSettingsController, Dum
                }
            });
            mLockscreenShadeTransitionController.setQS(mQs);
            mShadeTransitionController.setQs(mQs);
            mNotificationStackScrollLayoutController.setQsHeader((ViewGroup) mQs.getHeader());
            mQs.setScrollListener(mQsScrollListener);
            updateExpansion();
+0 −5
Original line number Diff line number Diff line
@@ -56,11 +56,6 @@ class ShadeExpansionStateManager @Inject constructor() {
        return ShadeExpansionChangeEvent(fraction, expanded, tracking, dragDownPxAmount)
    }

    /** Removes an expansion listener. */
    fun removeExpansionListener(listener: ShadeExpansionListener) {
        expansionListeners.remove(listener)
    }

    /** Adds a listener that will be notified when the panel state has changed. */
    @Deprecated("Use ShadeInteractor instead")
    fun addStateListener(listener: ShadeStateListener) {
+3 −0
Original line number Diff line number Diff line
@@ -28,6 +28,7 @@ import com.android.systemui.shade.ShadeHeaderController
import com.android.systemui.shade.TouchLogger.Companion.logTouchesTo
import com.android.systemui.shade.data.repository.ShadeRepository
import com.android.systemui.shade.shared.model.ShadeMode
import com.android.systemui.shade.transition.ScrimShadeTransitionController
import com.android.systemui.statusbar.policy.SplitShadeStateController
import javax.inject.Inject
import kotlinx.coroutines.CoroutineScope
@@ -47,12 +48,14 @@ constructor(
    private val controller: SplitShadeStateController,
    private val shadeController: ShadeController,
    private val shadeHeaderController: ShadeHeaderController,
    private val scrimShadeTransitionController: ScrimShadeTransitionController,
) : CoreStartable {

    override fun start() {
        hydrateShadeMode()
        logTouchesTo(touchLog)
        initHeaderController()
        scrimShadeTransitionController.init()
    }

    private fun initHeaderController() {
+31 −3
Original line number Diff line number Diff line
@@ -17,27 +17,55 @@
package com.android.systemui.shade.transition

import com.android.systemui.dagger.SysUISingleton
import com.android.systemui.dagger.qualifiers.Application
import com.android.systemui.dump.DumpManager
import com.android.systemui.scene.shared.flag.SceneContainerFlag
import com.android.systemui.shade.PanelState
import com.android.systemui.shade.ShadeExpansionChangeEvent
import com.android.systemui.shade.ShadeExpansionStateManager
import com.android.systemui.shade.domain.interactor.PanelExpansionInteractor
import com.android.systemui.statusbar.phone.ScrimController
import dagger.Lazy
import java.io.PrintWriter
import javax.inject.Inject
import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.launch

/** Controls the scrim properties during the shade expansion transition on non-lockscreen. */
@SysUISingleton
class ScrimShadeTransitionController
@Inject
constructor(
    dumpManager: DumpManager,
    @Application private val applicationScope: CoroutineScope,
    private val shadeExpansionStateManager: ShadeExpansionStateManager,
    private val panelExpansionInteractor: Lazy<PanelExpansionInteractor>,
    private val dumpManager: DumpManager,
    private val scrimController: ScrimController,
) {

    private var lastExpansionFraction: Float? = null
    private var lastExpansionEvent: ShadeExpansionChangeEvent? = null
    private var currentPanelState: Int? = null

    init {
    fun init() {
        if (SceneContainerFlag.isEnabled) {
            applicationScope.launch {
                panelExpansionInteractor.get().legacyPanelExpansion.collect { panelExpansion ->
                    onPanelExpansionChanged(
                        ShadeExpansionChangeEvent(
                            fraction = panelExpansion,
                            expanded = panelExpansion > 0f,
                            tracking = true,
                            dragDownPxAmount = 0f,
                        )
                    )
                }
            }
        } else {
            val currentState =
                shadeExpansionStateManager.addExpansionListener(this::onPanelExpansionChanged)
            onPanelExpansionChanged(currentState)
            shadeExpansionStateManager.addStateListener(this::onPanelStateChanged)
        }
        dumpManager.registerDumpable(
            ScrimShadeTransitionController::class.java.simpleName,
            this::dump
Loading