Loading packages/SystemUI/src/com/android/systemui/qs/panels/ui/compose/GridLayout.kt +2 −0 Original line number Diff line number Diff line Loading @@ -19,6 +19,7 @@ package com.android.systemui.qs.panels.ui.compose import androidx.compose.runtime.Composable import androidx.compose.ui.Modifier import com.android.compose.animation.scene.ContentScope import com.android.compose.animation.scene.ElementKey import com.android.systemui.qs.panels.shared.model.SizedTile import com.android.systemui.qs.panels.shared.model.TileRow import com.android.systemui.qs.panels.ui.viewmodel.EditTileViewModel Loading @@ -37,6 +38,7 @@ interface GridLayout { tiles: List<TileViewModel>, modifier: Modifier, listening: () -> Boolean, revealEffectContainer: ElementKey? = null, ) @Composable Loading packages/SystemUI/src/com/android/systemui/qs/panels/ui/compose/PaginatedGridLayout.kt +2 −0 Original line number Diff line number Diff line Loading @@ -41,6 +41,7 @@ import androidx.compose.ui.res.integerResource import androidx.compose.ui.unit.Velocity import androidx.compose.ui.unit.dp import com.android.compose.animation.scene.ContentScope import com.android.compose.animation.scene.ElementKey import com.android.compose.animation.scene.content.state.TransitionState import com.android.compose.modifiers.padding import com.android.systemui.common.ui.compose.PagerDots Loading Loading @@ -70,6 +71,7 @@ constructor( tiles: List<TileViewModel>, modifier: Modifier, listening: () -> Boolean, revealEffectContainer: ElementKey?, ) { val viewModel = rememberViewModel(traceName = "PaginatedGridLayout-TileGrid") { Loading packages/SystemUI/src/com/android/systemui/qs/panels/ui/compose/TileGrid.kt +15 −2 Original line number Diff line number Diff line Loading @@ -20,6 +20,8 @@ import androidx.compose.runtime.Composable import androidx.compose.ui.Modifier import com.android.compose.animation.scene.ContentScope import com.android.systemui.qs.panels.ui.viewmodel.TileGridViewModel import com.android.systemui.qs.ui.composable.QuickSettingsShade import com.android.systemui.scene.shared.flag.SceneContainerFlag @Composable fun ContentScope.TileGrid( Loading @@ -29,6 +31,17 @@ fun ContentScope.TileGrid( ) { val gridLayout = viewModel.gridLayout val tiles = viewModel.tileViewModels with(gridLayout) { TileGrid(tiles, modifier, listening) } with(gridLayout) { TileGrid( tiles = tiles, modifier = modifier, listening = listening, revealEffectContainer = if (SceneContainerFlag.isUnexpectedlyInLegacyMode()) { null } else { QuickSettingsShade.Elements.Panel }, ) } } packages/SystemUI/src/com/android/systemui/qs/panels/ui/compose/infinitegrid/InfiniteGridLayout.kt +5 −4 Original line number Diff line number Diff line Loading @@ -31,6 +31,7 @@ import androidx.compose.ui.res.dimensionResource import androidx.compose.ui.util.fastMap import androidx.lifecycle.compose.collectAsStateWithLifecycle import com.android.compose.animation.scene.ContentScope import com.android.compose.animation.scene.ElementKey import com.android.mechanics.compose.modifier.verticalTactileSurfaceReveal import com.android.mechanics.spec.builder.rememberMotionBuilderContext import com.android.systemui.dagger.SysUISingleton Loading Loading @@ -73,6 +74,7 @@ constructor( tiles: List<TileViewModel>, modifier: Modifier, listening: () -> Boolean, revealEffectContainer: ElementKey?, ) { val viewModel = rememberViewModel(traceName = "InfiniteGridLayout.TileGrid") { Loading Loading @@ -109,7 +111,6 @@ constructor( val scope = rememberCoroutineScope() val spans by remember(sizedTiles) { derivedStateOf { sizedTiles.fastMap { it.width } } } val isDualShade = viewModel.isDualShade val motionBuilderContext = rememberMotionBuilderContext() val marginBottom = with(LocalDensity.current) { QuickSettingsShade.Dimensions.Padding.toPx() } Loading Loading @@ -144,17 +145,17 @@ constructor( isVisible = listening, requestToggleTextFeedback = textFeedbackViewModel::requestShowFeedback, modifier = if (isDualShade) { if (revealEffectContainer != null) { Modifier.verticalTactileSurfaceReveal( contentScope = this@TileGrid, motionBuilderContext = motionBuilderContext, container = QuickSettingsShade.Elements.Panel, container = revealEffectContainer, deltaY = -marginBottom, ) } else { Modifier }, verticalFadeContentReveal = isDualShade, revealEffectContainer = revealEffectContainer, ) } } Loading packages/SystemUI/src/com/android/systemui/qs/panels/ui/compose/infinitegrid/Tile.kt +4 −4 Original line number Diff line number Diff line Loading @@ -76,6 +76,7 @@ import com.android.compose.animation.Expandable import com.android.compose.animation.bounceable import com.android.compose.animation.rememberExpandableController import com.android.compose.animation.scene.ContentScope import com.android.compose.animation.scene.ElementKey import com.android.compose.modifiers.thenIf import com.android.compose.theme.LocalAndroidColorScheme import com.android.mechanics.compose.modifier.verticalFadeContentReveal Loading @@ -101,7 +102,6 @@ import com.android.systemui.qs.panels.ui.viewmodel.toIconProvider import com.android.systemui.qs.panels.ui.viewmodel.toUiState import com.android.systemui.qs.pipeline.shared.TileSpec import com.android.systemui.qs.tileimpl.QSTileImpl import com.android.systemui.qs.ui.composable.QuickSettingsShade import com.android.systemui.qs.ui.compose.borderOnFocus import com.android.systemui.res.R import kotlinx.coroutines.CoroutineScope Loading Loading @@ -143,7 +143,7 @@ fun ContentScope.Tile( isVisible: () -> Boolean = { true }, requestToggleTextFeedback: (TileSpec) -> Unit = {}, detailsViewModel: DetailsViewModel?, verticalFadeContentReveal: Boolean = false, revealEffectContainer: ElementKey? = null, ) { trace(tile.traceName) { val currentBounceableInfo by rememberUpdatedState(bounceableInfo) Loading Loading @@ -252,11 +252,11 @@ fun ContentScope.Tile( iconOnly = iconOnly, isDualTarget = isDualTarget, modifier = if (verticalFadeContentReveal) { if (revealEffectContainer != null) { Modifier.verticalFadeContentReveal( contentScope = this, motionBuilderContext = rememberMotionBuilderContext(), container = QuickSettingsShade.Elements.Panel, container = revealEffectContainer, ) } else { Modifier Loading Loading
packages/SystemUI/src/com/android/systemui/qs/panels/ui/compose/GridLayout.kt +2 −0 Original line number Diff line number Diff line Loading @@ -19,6 +19,7 @@ package com.android.systemui.qs.panels.ui.compose import androidx.compose.runtime.Composable import androidx.compose.ui.Modifier import com.android.compose.animation.scene.ContentScope import com.android.compose.animation.scene.ElementKey import com.android.systemui.qs.panels.shared.model.SizedTile import com.android.systemui.qs.panels.shared.model.TileRow import com.android.systemui.qs.panels.ui.viewmodel.EditTileViewModel Loading @@ -37,6 +38,7 @@ interface GridLayout { tiles: List<TileViewModel>, modifier: Modifier, listening: () -> Boolean, revealEffectContainer: ElementKey? = null, ) @Composable Loading
packages/SystemUI/src/com/android/systemui/qs/panels/ui/compose/PaginatedGridLayout.kt +2 −0 Original line number Diff line number Diff line Loading @@ -41,6 +41,7 @@ import androidx.compose.ui.res.integerResource import androidx.compose.ui.unit.Velocity import androidx.compose.ui.unit.dp import com.android.compose.animation.scene.ContentScope import com.android.compose.animation.scene.ElementKey import com.android.compose.animation.scene.content.state.TransitionState import com.android.compose.modifiers.padding import com.android.systemui.common.ui.compose.PagerDots Loading Loading @@ -70,6 +71,7 @@ constructor( tiles: List<TileViewModel>, modifier: Modifier, listening: () -> Boolean, revealEffectContainer: ElementKey?, ) { val viewModel = rememberViewModel(traceName = "PaginatedGridLayout-TileGrid") { Loading
packages/SystemUI/src/com/android/systemui/qs/panels/ui/compose/TileGrid.kt +15 −2 Original line number Diff line number Diff line Loading @@ -20,6 +20,8 @@ import androidx.compose.runtime.Composable import androidx.compose.ui.Modifier import com.android.compose.animation.scene.ContentScope import com.android.systemui.qs.panels.ui.viewmodel.TileGridViewModel import com.android.systemui.qs.ui.composable.QuickSettingsShade import com.android.systemui.scene.shared.flag.SceneContainerFlag @Composable fun ContentScope.TileGrid( Loading @@ -29,6 +31,17 @@ fun ContentScope.TileGrid( ) { val gridLayout = viewModel.gridLayout val tiles = viewModel.tileViewModels with(gridLayout) { TileGrid(tiles, modifier, listening) } with(gridLayout) { TileGrid( tiles = tiles, modifier = modifier, listening = listening, revealEffectContainer = if (SceneContainerFlag.isUnexpectedlyInLegacyMode()) { null } else { QuickSettingsShade.Elements.Panel }, ) } }
packages/SystemUI/src/com/android/systemui/qs/panels/ui/compose/infinitegrid/InfiniteGridLayout.kt +5 −4 Original line number Diff line number Diff line Loading @@ -31,6 +31,7 @@ import androidx.compose.ui.res.dimensionResource import androidx.compose.ui.util.fastMap import androidx.lifecycle.compose.collectAsStateWithLifecycle import com.android.compose.animation.scene.ContentScope import com.android.compose.animation.scene.ElementKey import com.android.mechanics.compose.modifier.verticalTactileSurfaceReveal import com.android.mechanics.spec.builder.rememberMotionBuilderContext import com.android.systemui.dagger.SysUISingleton Loading Loading @@ -73,6 +74,7 @@ constructor( tiles: List<TileViewModel>, modifier: Modifier, listening: () -> Boolean, revealEffectContainer: ElementKey?, ) { val viewModel = rememberViewModel(traceName = "InfiniteGridLayout.TileGrid") { Loading Loading @@ -109,7 +111,6 @@ constructor( val scope = rememberCoroutineScope() val spans by remember(sizedTiles) { derivedStateOf { sizedTiles.fastMap { it.width } } } val isDualShade = viewModel.isDualShade val motionBuilderContext = rememberMotionBuilderContext() val marginBottom = with(LocalDensity.current) { QuickSettingsShade.Dimensions.Padding.toPx() } Loading Loading @@ -144,17 +145,17 @@ constructor( isVisible = listening, requestToggleTextFeedback = textFeedbackViewModel::requestShowFeedback, modifier = if (isDualShade) { if (revealEffectContainer != null) { Modifier.verticalTactileSurfaceReveal( contentScope = this@TileGrid, motionBuilderContext = motionBuilderContext, container = QuickSettingsShade.Elements.Panel, container = revealEffectContainer, deltaY = -marginBottom, ) } else { Modifier }, verticalFadeContentReveal = isDualShade, revealEffectContainer = revealEffectContainer, ) } } Loading
packages/SystemUI/src/com/android/systemui/qs/panels/ui/compose/infinitegrid/Tile.kt +4 −4 Original line number Diff line number Diff line Loading @@ -76,6 +76,7 @@ import com.android.compose.animation.Expandable import com.android.compose.animation.bounceable import com.android.compose.animation.rememberExpandableController import com.android.compose.animation.scene.ContentScope import com.android.compose.animation.scene.ElementKey import com.android.compose.modifiers.thenIf import com.android.compose.theme.LocalAndroidColorScheme import com.android.mechanics.compose.modifier.verticalFadeContentReveal Loading @@ -101,7 +102,6 @@ import com.android.systemui.qs.panels.ui.viewmodel.toIconProvider import com.android.systemui.qs.panels.ui.viewmodel.toUiState import com.android.systemui.qs.pipeline.shared.TileSpec import com.android.systemui.qs.tileimpl.QSTileImpl import com.android.systemui.qs.ui.composable.QuickSettingsShade import com.android.systemui.qs.ui.compose.borderOnFocus import com.android.systemui.res.R import kotlinx.coroutines.CoroutineScope Loading Loading @@ -143,7 +143,7 @@ fun ContentScope.Tile( isVisible: () -> Boolean = { true }, requestToggleTextFeedback: (TileSpec) -> Unit = {}, detailsViewModel: DetailsViewModel?, verticalFadeContentReveal: Boolean = false, revealEffectContainer: ElementKey? = null, ) { trace(tile.traceName) { val currentBounceableInfo by rememberUpdatedState(bounceableInfo) Loading Loading @@ -252,11 +252,11 @@ fun ContentScope.Tile( iconOnly = iconOnly, isDualTarget = isDualTarget, modifier = if (verticalFadeContentReveal) { if (revealEffectContainer != null) { Modifier.verticalFadeContentReveal( contentScope = this, motionBuilderContext = rememberMotionBuilderContext(), container = QuickSettingsShade.Elements.Panel, container = revealEffectContainer, ) } else { Modifier Loading