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

Commit fb77af71 authored by Caitlin Shkuratov's avatar Caitlin Shkuratov Committed by Android (Google) Code Review
Browse files

Merge "[SB] Never hide status bar if device isn't provisioned." into main

parents 2c9a365e bdca58ca
Loading
Loading
Loading
Loading
+18 −5
Original line number Diff line number Diff line
@@ -80,6 +80,7 @@ import com.android.systemui.statusbar.pipeline.shared.domain.interactor.HomeStat
import com.android.systemui.statusbar.pipeline.shared.ui.model.ChipsVisibilityModel
import com.android.systemui.statusbar.pipeline.shared.ui.model.SystemInfoCombinedVisibilityModel
import com.android.systemui.statusbar.pipeline.shared.ui.model.VisibilityModel
import com.android.systemui.statusbar.policy.domain.interactor.DeviceProvisioningInteractor
import com.android.systemui.statusbar.systemstatusicons.ui.viewmodel.SystemStatusIconsViewModel
import dagger.assisted.AssistedFactory
import dagger.assisted.AssistedInject
@@ -236,6 +237,7 @@ constructor(
    headsUpNotificationInteractor: HeadsUpNotificationInteractor,
    keyguardTransitionInteractor: KeyguardTransitionInteractor,
    keyguardInteractor: KeyguardInteractor,
    deviceProvisioningInteractor: DeviceProvisioningInteractor,
    override val operatorNameViewModel: StatusBarOperatorNameViewModel,
    sceneInteractor: SceneInteractor,
    sceneContainerOcclusionInteractor: SceneContainerOcclusionInteractor,
@@ -412,12 +414,23 @@ constructor(
     * if we shouldn't be showing any part of the home status bar.
     */
    private val isHomeScreenStatusBarAllowedLegacy: Flow<Boolean> =
        combine(keyguardTransitionInteractor.currentKeyguardState, isShadeVisibleOnThisDisplay) {
                currentKeyguardState,
                isShadeVisibleOnThisDisplay ->
        combine(
                keyguardTransitionInteractor.currentKeyguardState,
                isShadeVisibleOnThisDisplay,
                deviceProvisioningInteractor.isDeviceProvisioned,
            ) { currentKeyguardState, isShadeVisibleOnThisDisplay, isDeviceProvisioned ->
                when {
                    // Short-term fix for b/418020209.
                    // `isShadeVisibleOnThisDisplay` is incorrectly reporting that the shade is
                    // visible during setup wizard, causing the status bar to incorrectly hide.
                    // Temporarily prevent that while we work out a safe fix inside shade code.
                    !isDeviceProvisioned -> true
                    else -> {
                        (currentKeyguardState == GONE || currentKeyguardState == OCCLUDED) &&
                            !isShadeVisibleOnThisDisplay
                    }
                }
            }
            .distinctUntilChanged()
            .logDiffsForTable(
                tableLogBuffer = tableLogger,
+2 −0
Original line number Diff line number Diff line
@@ -45,6 +45,7 @@ import com.android.systemui.statusbar.pipeline.shared.domain.interactor.homeStat
import com.android.systemui.statusbar.pipeline.shared.domain.interactor.homeStatusBarInteractor
import com.android.systemui.statusbar.pipeline.shared.ui.binder.HomeStatusBarViewBinder
import com.android.systemui.statusbar.pipeline.shared.ui.binder.HomeStatusBarViewBinderImpl
import com.android.systemui.statusbar.policy.domain.interactor.deviceProvisioningInteractor
import com.android.systemui.statusbar.systemstatusicons.ui.viewmodel.systemStatusIconsViewModelFactory

var Kosmos.homeStatusBarViewBinder: HomeStatusBarViewBinder by
@@ -83,6 +84,7 @@ var Kosmos.homeStatusBarViewModelFactory: (Int) -> HomeStatusBarViewModel by
                headsUpNotificationInteractor,
                keyguardTransitionInteractor,
                keyguardInteractor,
                deviceProvisioningInteractor,
                statusBarOperatorNameViewModel,
                sceneInteractor,
                sceneContainerOcclusionInteractor,