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

Commit 417905ae authored by Jordan Demeulenaere's avatar Jordan Demeulenaere Committed by Android (Google) Code Review
Browse files

Revert "Make Compose QS STL match the CUJ start/end signals"

This reverts commit 8aca17bc.

Reason for revert: b/398046692

Change-Id: I6fd3f68d6d2d239e45e8f750ef89dd01a0201e15
parent 8aca17bc
Loading
Loading
Loading
Loading
+0 −2
Original line number Diff line number Diff line
@@ -203,8 +203,6 @@ public interface QS extends FragmentBase {
     */
    void setIsNotificationPanelFullWidth(boolean isFullWidth);

    default void setQSExpandingOrCollapsing(boolean isQSExpandingOrCollapsing) {}

    /**
     * Callback for when QSPanel container is scrolled
     */
+16 −37
Original line number Diff line number Diff line
@@ -305,7 +305,6 @@ constructor(
                sceneState,
                viewModel.containerViewModel.editModeViewModel.isEditing,
                snapshotFlow { viewModel.expansionState }.map { it.progress },
                snapshotFlow { viewModel.isQSExpandingOrCollapsing },
            )
        }

@@ -537,10 +536,6 @@ constructor(
        return qqsVisible.value
    }

    override fun setQSExpandingOrCollapsing(isQSExpandingOrCollapsing: Boolean) {
        viewModel.isQSExpandingOrCollapsing = isQSExpandingOrCollapsing
    }

    private fun setListenerCollections() {
        lifecycleScope.launch {
            lifecycle.repeatOnLifecycle(Lifecycle.State.STARTED) {
@@ -881,7 +876,6 @@ private suspend fun synchronizeQsState(
    state: MutableSceneTransitionLayoutState,
    editMode: Flow<Boolean>,
    expansion: Flow<Float>,
    isQSExpandingOrCollapsing: Flow<Boolean>,
) {
    coroutineScope {
        val animationScope = this
@@ -893,42 +887,25 @@ private suspend fun synchronizeQsState(
            currentTransition = null
        }

        var lastValidProgress = 0f
        combine(editMode, expansion, isQSExpandingOrCollapsing, ::Triple).collectLatest {
            (editMode, progress, isQSExpandingOrCollapsing) ->
        editMode.combine(expansion, ::Pair).collectLatest { (editMode, progress) ->
            if (editMode && state.currentScene != SceneKeys.EditMode) {
                state.setTargetScene(SceneKeys.EditMode, animationScope)?.second?.join()
            } else if (!editMode && state.currentScene == SceneKeys.EditMode) {
                state.setTargetScene(SceneKeys.QuickSettings, animationScope)?.second?.join()
            }

            if (!editMode) {
                if (!isQSExpandingOrCollapsing) {
                    if (progress == 0f) {
                        snapTo(QuickQuickSettings)
                        return@collectLatest
                    }

                    if (progress == 1f) {
                        snapTo(QuickSettings)
                        return@collectLatest
                    }
                }

                var progress = progress
                if (progress >= 0f || progress <= 1f) {
                    lastValidProgress = progress
                } else {
                    progress = lastValidProgress
                }

                when (progress) {
                    0f -> snapTo(QuickQuickSettings)
                    1f -> snapTo(QuickSettings)
                    else -> {
                        val transition = currentTransition
                        if (transition != null) {
                            transition.progress = progress
                            return@collectLatest
                        }

                val newTransition = ExpansionTransition(progress).also { currentTransition = it }
                        val newTransition =
                            ExpansionTransition(progress).also { currentTransition = it }
                        state.startTransitionImmediately(
                            animationScope = animationScope,
                            transition = newTransition,
@@ -937,6 +914,8 @@ private suspend fun synchronizeQsState(
                }
            }
        }
    }
}

private class ExpansionTransition(currentProgress: Float) :
    TransitionState.Transition.ChangeScene(
+1 −3
Original line number Diff line number Diff line
@@ -35,6 +35,7 @@ import com.android.systemui.animation.ShadeInterpolation
import com.android.systemui.classifier.Classifier
import com.android.systemui.classifier.domain.interactor.FalsingInteractor
import com.android.systemui.common.ui.domain.interactor.ConfigurationInteractor
import com.android.systemui.dagger.qualifiers.Main
import com.android.systemui.deviceentry.domain.interactor.DeviceEntryInteractor
import com.android.systemui.keyguard.domain.interactor.KeyguardTransitionInteractor
import com.android.systemui.keyguard.shared.model.Edge
@@ -307,8 +308,6 @@ constructor(
    val animateTilesExpansion: Boolean
        get() = inFirstPage && !mediaSuddenlyAppearingInLandscape

    var isQSExpandingOrCollapsing by mutableStateOf(false)

    private val inFirstPage: Boolean
        get() = inFirstPageViewModel.inFirstPage

@@ -542,7 +541,6 @@ constructor(
                println("proposedTranslation", proposedTranslation)
                println("expansionState", expansionState)
                println("forceQS", forceQs)
                println("isShadeExpandingOrCollapsing", isQSExpandingOrCollapsing)
                printSection("Derived values") {
                    println("headerTranslation", headerTranslation)
                    println("translationScaleY", translationScaleY)
+4 −11
Original line number Diff line number Diff line
@@ -105,14 +105,15 @@ import com.android.systemui.util.kotlin.JavaAdapter;

import dalvik.annotation.optimization.NeverCompile;

import dagger.Lazy;

import kotlin.Unit;

import java.io.PrintWriter;

import javax.inject.Inject;
import javax.inject.Provider;

import dagger.Lazy;
import kotlin.Unit;

/** Handles QuickSettings touch handling, expansion and animation state. */
@SysUISingleton
public class QuickSettingsControllerImpl implements QuickSettingsController, Dumpable {
@@ -2365,16 +2366,8 @@ public class QuickSettingsControllerImpl implements QuickSettingsController, Dum
            return;
        }
        if (startTracing) {
            if (mQs != null) {
                mQs.setQSExpandingOrCollapsing(true);
            }

            monitor.begin(mPanelView, Cuj.CUJ_NOTIFICATION_SHADE_QS_EXPAND_COLLAPSE);
        } else {
            if (mQs != null) {
                mQs.setQSExpandingOrCollapsing(false);
            }

            if (wasCancelled) {
                monitor.cancel(Cuj.CUJ_NOTIFICATION_SHADE_QS_EXPAND_COLLAPSE);
            } else {