Loading packages/SystemUI/aconfig/systemui.aconfig +7 −0 Original line number Diff line number Diff line Loading @@ -207,6 +207,13 @@ flag { bug: "308676488" } flag { name: "compose_bouncer" namespace: "systemui" description: "Use the new compose bouncer in SystemUI" bug: "310005730" } flag { name: "media_in_scene_container" namespace: "systemui" Loading packages/SystemUI/compose/facade/disabled/src/com/android/systemui/compose/ComposeFacade.kt +8 −0 Original line number Diff line number Diff line Loading @@ -22,6 +22,8 @@ import android.view.View import android.view.WindowInsets import androidx.activity.ComponentActivity import androidx.lifecycle.LifecycleOwner import com.android.systemui.bouncer.ui.BouncerDialogFactory import com.android.systemui.bouncer.ui.viewmodel.BouncerViewModel import com.android.systemui.communal.ui.viewmodel.BaseCommunalViewModel import com.android.systemui.people.ui.viewmodel.PeopleViewModel import com.android.systemui.qs.footer.ui.viewmodel.FooterActionsViewModel Loading Loading @@ -85,6 +87,12 @@ object ComposeFacade : BaseComposeFacade { throwComposeUnavailableError() } override fun createBouncer( context: Context, viewModel: BouncerViewModel, dialogFactory: BouncerDialogFactory, ): View = throwComposeUnavailableError() private fun throwComposeUnavailableError(): Nothing { error( "Compose is not available. Make sure to check isComposeAvailable() before calling any" + Loading packages/SystemUI/compose/facade/enabled/src/com/android/systemui/compose/ComposeFacade.kt +13 −0 Original line number Diff line number Diff line Loading @@ -28,6 +28,9 @@ import androidx.compose.ui.unit.dp import androidx.lifecycle.LifecycleOwner import com.android.compose.theme.PlatformTheme import com.android.compose.ui.platform.DensityAwareComposeView import com.android.systemui.bouncer.ui.BouncerDialogFactory import com.android.systemui.bouncer.ui.composable.BouncerContent import com.android.systemui.bouncer.ui.viewmodel.BouncerViewModel import com.android.systemui.common.ui.compose.windowinsets.CutoutLocation import com.android.systemui.common.ui.compose.windowinsets.DisplayCutout import com.android.systemui.common.ui.compose.windowinsets.DisplayCutoutProvider Loading Loading @@ -171,4 +174,14 @@ object ComposeFacade : BaseComposeFacade { private fun Int.toDp(context: Context): Dp { return (this.toFloat() / context.resources.displayMetrics.density).dp } override fun createBouncer( context: Context, viewModel: BouncerViewModel, dialogFactory: BouncerDialogFactory, ): View { return ComposeView(context).apply { setContent { PlatformTheme { BouncerContent(viewModel, dialogFactory) } } } } } packages/SystemUI/compose/facade/enabled/src/com/android/systemui/scene/BouncerSceneModule.kt +0 −20 Original line number Diff line number Diff line Loading @@ -16,34 +16,14 @@ package com.android.systemui.scene import android.app.AlertDialog import android.content.Context import com.android.systemui.bouncer.ui.composable.BouncerDialogFactory import com.android.systemui.bouncer.ui.composable.BouncerScene import com.android.systemui.dagger.SysUISingleton import com.android.systemui.dagger.qualifiers.Application import com.android.systemui.scene.shared.model.Scene import com.android.systemui.statusbar.phone.SystemUIDialog import dagger.Binds import dagger.Module import dagger.Provides import dagger.multibindings.IntoSet @Module interface BouncerSceneModule { @Binds @IntoSet fun bouncerScene(scene: BouncerScene): Scene companion object { @Provides @SysUISingleton fun bouncerSceneDialogFactory(@Application context: Context): BouncerDialogFactory { return object : BouncerDialogFactory { override fun invoke(): AlertDialog { return SystemUIDialog(context) } } } } } packages/SystemUI/compose/features/src/com/android/systemui/bouncer/ui/composable/BouncerContent.kt +1 −4 Original line number Diff line number Diff line Loading @@ -81,6 +81,7 @@ import com.android.compose.animation.scene.transitions import com.android.compose.modifiers.thenIf import com.android.compose.windowsizeclass.LocalWindowSizeClass import com.android.systemui.bouncer.shared.model.BouncerActionButtonModel import com.android.systemui.bouncer.ui.BouncerDialogFactory import com.android.systemui.bouncer.ui.helper.BouncerSceneLayout import com.android.systemui.bouncer.ui.viewmodel.AuthMethodBouncerViewModel import com.android.systemui.bouncer.ui.viewmodel.BouncerViewModel Loading Loading @@ -824,10 +825,6 @@ private fun UserSwitcherDropdownMenu( } } interface BouncerDialogFactory { operator fun invoke(): AlertDialog } /** * Calculates an alpha for the user switcher and bouncer such that it's at `1` when the offset of * the two reaches a stopping point but `0` in the middle of the transition. Loading Loading
packages/SystemUI/aconfig/systemui.aconfig +7 −0 Original line number Diff line number Diff line Loading @@ -207,6 +207,13 @@ flag { bug: "308676488" } flag { name: "compose_bouncer" namespace: "systemui" description: "Use the new compose bouncer in SystemUI" bug: "310005730" } flag { name: "media_in_scene_container" namespace: "systemui" Loading
packages/SystemUI/compose/facade/disabled/src/com/android/systemui/compose/ComposeFacade.kt +8 −0 Original line number Diff line number Diff line Loading @@ -22,6 +22,8 @@ import android.view.View import android.view.WindowInsets import androidx.activity.ComponentActivity import androidx.lifecycle.LifecycleOwner import com.android.systemui.bouncer.ui.BouncerDialogFactory import com.android.systemui.bouncer.ui.viewmodel.BouncerViewModel import com.android.systemui.communal.ui.viewmodel.BaseCommunalViewModel import com.android.systemui.people.ui.viewmodel.PeopleViewModel import com.android.systemui.qs.footer.ui.viewmodel.FooterActionsViewModel Loading Loading @@ -85,6 +87,12 @@ object ComposeFacade : BaseComposeFacade { throwComposeUnavailableError() } override fun createBouncer( context: Context, viewModel: BouncerViewModel, dialogFactory: BouncerDialogFactory, ): View = throwComposeUnavailableError() private fun throwComposeUnavailableError(): Nothing { error( "Compose is not available. Make sure to check isComposeAvailable() before calling any" + Loading
packages/SystemUI/compose/facade/enabled/src/com/android/systemui/compose/ComposeFacade.kt +13 −0 Original line number Diff line number Diff line Loading @@ -28,6 +28,9 @@ import androidx.compose.ui.unit.dp import androidx.lifecycle.LifecycleOwner import com.android.compose.theme.PlatformTheme import com.android.compose.ui.platform.DensityAwareComposeView import com.android.systemui.bouncer.ui.BouncerDialogFactory import com.android.systemui.bouncer.ui.composable.BouncerContent import com.android.systemui.bouncer.ui.viewmodel.BouncerViewModel import com.android.systemui.common.ui.compose.windowinsets.CutoutLocation import com.android.systemui.common.ui.compose.windowinsets.DisplayCutout import com.android.systemui.common.ui.compose.windowinsets.DisplayCutoutProvider Loading Loading @@ -171,4 +174,14 @@ object ComposeFacade : BaseComposeFacade { private fun Int.toDp(context: Context): Dp { return (this.toFloat() / context.resources.displayMetrics.density).dp } override fun createBouncer( context: Context, viewModel: BouncerViewModel, dialogFactory: BouncerDialogFactory, ): View { return ComposeView(context).apply { setContent { PlatformTheme { BouncerContent(viewModel, dialogFactory) } } } } }
packages/SystemUI/compose/facade/enabled/src/com/android/systemui/scene/BouncerSceneModule.kt +0 −20 Original line number Diff line number Diff line Loading @@ -16,34 +16,14 @@ package com.android.systemui.scene import android.app.AlertDialog import android.content.Context import com.android.systemui.bouncer.ui.composable.BouncerDialogFactory import com.android.systemui.bouncer.ui.composable.BouncerScene import com.android.systemui.dagger.SysUISingleton import com.android.systemui.dagger.qualifiers.Application import com.android.systemui.scene.shared.model.Scene import com.android.systemui.statusbar.phone.SystemUIDialog import dagger.Binds import dagger.Module import dagger.Provides import dagger.multibindings.IntoSet @Module interface BouncerSceneModule { @Binds @IntoSet fun bouncerScene(scene: BouncerScene): Scene companion object { @Provides @SysUISingleton fun bouncerSceneDialogFactory(@Application context: Context): BouncerDialogFactory { return object : BouncerDialogFactory { override fun invoke(): AlertDialog { return SystemUIDialog(context) } } } } }
packages/SystemUI/compose/features/src/com/android/systemui/bouncer/ui/composable/BouncerContent.kt +1 −4 Original line number Diff line number Diff line Loading @@ -81,6 +81,7 @@ import com.android.compose.animation.scene.transitions import com.android.compose.modifiers.thenIf import com.android.compose.windowsizeclass.LocalWindowSizeClass import com.android.systemui.bouncer.shared.model.BouncerActionButtonModel import com.android.systemui.bouncer.ui.BouncerDialogFactory import com.android.systemui.bouncer.ui.helper.BouncerSceneLayout import com.android.systemui.bouncer.ui.viewmodel.AuthMethodBouncerViewModel import com.android.systemui.bouncer.ui.viewmodel.BouncerViewModel Loading Loading @@ -824,10 +825,6 @@ private fun UserSwitcherDropdownMenu( } } interface BouncerDialogFactory { operator fun invoke(): AlertDialog } /** * Calculates an alpha for the user switcher and bouncer such that it's at `1` when the offset of * the two reaches a stopping point but `0` in the middle of the transition. Loading