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

Commit b2f78088 authored by Treehugger Robot's avatar Treehugger Robot Committed by Android (Google) Code Review
Browse files

Merge "Change scene on main thread" into main

parents 542824d9 425b504a
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -24,6 +24,7 @@ import com.android.systemui.SysuiTestCase
import com.android.systemui.flags.EnableSceneContainer
import com.android.systemui.kosmos.collectLastValue
import com.android.systemui.kosmos.runTest
import com.android.systemui.kosmos.testDispatcher
import com.android.systemui.kosmos.testScope
import com.android.systemui.kosmos.useUnconfinedTestDispatcher
import com.android.systemui.lifecycle.activateIn
@@ -82,6 +83,7 @@ class QuickSettingsSceneContentViewModelTest : SysuiTestCase() {
                    mediaCarouselInteractor = mediaCarouselInteractor,
                    shadeModeInteractor = shadeModeInteractor,
                    sceneInteractor = sceneInteractor,
                    mainDispatcher = testDispatcher,
                )
            underTest.activateIn(testScope)
            disableDualShade()
+5 −1
Original line number Diff line number Diff line
@@ -19,6 +19,7 @@ package com.android.systemui.qs.ui.viewmodel
import androidx.compose.runtime.getValue
import androidx.lifecycle.LifecycleOwner
import com.android.app.tracing.coroutines.launchTraced as launch
import com.android.systemui.dagger.qualifiers.Main;
import com.android.systemui.lifecycle.ExclusiveActivatable
import com.android.systemui.lifecycle.Hydrator
import com.android.systemui.media.controls.domain.pipeline.interactor.MediaCarouselInteractor
@@ -34,6 +35,8 @@ import com.android.systemui.shade.ui.viewmodel.ShadeHeaderViewModel
import dagger.assisted.AssistedFactory
import dagger.assisted.AssistedInject
import java.util.concurrent.atomic.AtomicBoolean
import kotlinx.coroutines.CoroutineDispatcher
import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.awaitCancellation
import kotlinx.coroutines.coroutineScope

@@ -55,6 +58,7 @@ constructor(
    val mediaCarouselInteractor: MediaCarouselInteractor,
    private val shadeModeInteractor: ShadeModeInteractor,
    private val sceneInteractor: SceneInteractor,
    @Main private val mainDispatcher: CoroutineDispatcher,
) : ExclusiveActivatable() {
    val qsContainerViewModel = qsContainerViewModelFactory.create(supportsBrightnessMirroring = true)

@@ -81,7 +85,7 @@ constructor(

            launch { qsContainerViewModel.activate() }

            launch {
            launch(context = mainDispatcher) {
                shadeModeInteractor.shadeMode.collect { shadeMode ->
                    if (shadeMode is ShadeMode.Split) {
                        sceneInteractor.snapToScene(Scenes.Shade, "Unfold while on QS")
+2 −0
Original line number Diff line number Diff line
@@ -21,6 +21,7 @@ import android.view.ViewGroup
import android.widget.FrameLayout
import com.android.systemui.kosmos.Kosmos
import com.android.systemui.kosmos.Kosmos.Fixture
import com.android.systemui.kosmos.testDispatcher
import com.android.systemui.media.controls.domain.pipeline.interactor.mediaCarouselInteractor
import com.android.systemui.qs.footerActionsController
import com.android.systemui.qs.footerActionsViewModelFactory
@@ -57,6 +58,7 @@ val Kosmos.quickSettingsSceneContentViewModel by Fixture {
        mediaCarouselInteractor = mediaCarouselInteractor,
        shadeModeInteractor = shadeModeInteractor,
        sceneInteractor = sceneInteractor,
        mainDispatcher = testDispatcher,
    )
}