Loading packages/SystemUI/src/com/android/systemui/shade/domain/interactor/ShadeInteractorSceneContainerImpl.kt +7 −4 Original line number Diff line number Diff line Loading @@ -99,14 +99,17 @@ constructor( .distinctUntilChanged() override val isQsFullscreen: Flow<Boolean> = sceneInteractor .resolveSceneFamily(SceneFamilies.QuickSettings) .flatMapLatestConflated { quickSettingsScene -> combine( shadeRepository.isShadeLayoutWide, sceneInteractor.resolveSceneFamily(SceneFamilies.QuickSettings), ::Pair ) .flatMapLatestConflated { (isShadeLayoutWide, quickSettingsScene) -> sceneInteractor.transitionState .map { state -> when (state) { is ObservableTransitionState.Idle -> state.currentScene == quickSettingsScene !isShadeLayoutWide && state.currentScene == quickSettingsScene is ObservableTransitionState.Transition -> false } } Loading packages/SystemUI/tests/src/com/android/systemui/shade/domain/interactor/ShadeInteractorSceneContainerImplTest.kt +19 −0 Original line number Diff line number Diff line Loading @@ -155,6 +155,25 @@ class ShadeInteractorSceneContainerImplTest : SysuiTestCase() { Truth.assertThat(actual).isFalse() } @Test fun qsFullscreen_falseWhenIdleSplitShadeQs() = testScope.runTest { val actual by collectLastValue(underTest.isQsFullscreen) // WHEN split shade is enabled and Idle on QuickSettings scene shadeTestUtil.setSplitShade(true) keyguardRepository.setStatusBarState(StatusBarState.SHADE) val transitionState = MutableStateFlow<ObservableTransitionState>( ObservableTransitionState.Idle(Scenes.QuickSettings) ) sceneInteractor.setTransitionState(transitionState) runCurrent() // THEN QS is not fullscreen Truth.assertThat(actual).isFalse() } @Test fun qsFullscreen_trueWhenIdleQS() = testScope.runTest { Loading Loading
packages/SystemUI/src/com/android/systemui/shade/domain/interactor/ShadeInteractorSceneContainerImpl.kt +7 −4 Original line number Diff line number Diff line Loading @@ -99,14 +99,17 @@ constructor( .distinctUntilChanged() override val isQsFullscreen: Flow<Boolean> = sceneInteractor .resolveSceneFamily(SceneFamilies.QuickSettings) .flatMapLatestConflated { quickSettingsScene -> combine( shadeRepository.isShadeLayoutWide, sceneInteractor.resolveSceneFamily(SceneFamilies.QuickSettings), ::Pair ) .flatMapLatestConflated { (isShadeLayoutWide, quickSettingsScene) -> sceneInteractor.transitionState .map { state -> when (state) { is ObservableTransitionState.Idle -> state.currentScene == quickSettingsScene !isShadeLayoutWide && state.currentScene == quickSettingsScene is ObservableTransitionState.Transition -> false } } Loading
packages/SystemUI/tests/src/com/android/systemui/shade/domain/interactor/ShadeInteractorSceneContainerImplTest.kt +19 −0 Original line number Diff line number Diff line Loading @@ -155,6 +155,25 @@ class ShadeInteractorSceneContainerImplTest : SysuiTestCase() { Truth.assertThat(actual).isFalse() } @Test fun qsFullscreen_falseWhenIdleSplitShadeQs() = testScope.runTest { val actual by collectLastValue(underTest.isQsFullscreen) // WHEN split shade is enabled and Idle on QuickSettings scene shadeTestUtil.setSplitShade(true) keyguardRepository.setStatusBarState(StatusBarState.SHADE) val transitionState = MutableStateFlow<ObservableTransitionState>( ObservableTransitionState.Idle(Scenes.QuickSettings) ) sceneInteractor.setTransitionState(transitionState) runCurrent() // THEN QS is not fullscreen Truth.assertThat(actual).isFalse() } @Test fun qsFullscreen_trueWhenIdleQS() = testScope.runTest { Loading