diff options
| author | 2024-05-30 19:22:22 +0000 | |
|---|---|---|
| committer | 2024-05-30 19:22:22 +0000 | |
| commit | 67d0642b9e65ac76e15019cef40a09087891cb62 (patch) | |
| tree | 13056e762ccbd45e6e405a944f0d8ba5ef511e2d | |
| parent | 6fe2b298a836dc2e92e814d8e1c28a0656fd09a9 (diff) | |
| parent | 8ebb9fb5be4a667ebc0e3c684ee54eb71398afda (diff) | |
Merge "[bc25] Add an overscroll animation for Dual Shade." into main
4 files changed, 15 insertions, 4 deletions
diff --git a/packages/SystemUI/compose/features/src/com/android/systemui/scene/ui/composable/SceneContainerTransitions.kt b/packages/SystemUI/compose/features/src/com/android/systemui/scene/ui/composable/SceneContainerTransitions.kt index f5a0ef2adde7..3255b0805fdb 100644 --- a/packages/SystemUI/compose/features/src/com/android/systemui/scene/ui/composable/SceneContainerTransitions.kt +++ b/packages/SystemUI/compose/features/src/com/android/systemui/scene/ui/composable/SceneContainerTransitions.kt @@ -22,6 +22,7 @@ import com.android.systemui.scene.ui.composable.transitions.lockscreenToQuickSet import com.android.systemui.scene.ui.composable.transitions.lockscreenToShadeTransition import com.android.systemui.scene.ui.composable.transitions.lockscreenToSplitShadeTransition import com.android.systemui.scene.ui.composable.transitions.shadeToQuickSettingsTransition +import com.android.systemui.shade.ui.composable.OverlayShade import com.android.systemui.shade.ui.composable.Shade /** @@ -102,4 +103,10 @@ val SceneContainerTransitions = transitions { y = { Shade.Dimensions.ScrimOverscrollLimit } ) } + overscroll(Scenes.NotificationsShade, Orientation.Vertical) { + translate(OverlayShade.Elements.Panel, y = { OverlayShade.Dimensions.OverscrollLimit }) + } + overscroll(Scenes.QuickSettingsShade, Orientation.Vertical) { + translate(OverlayShade.Elements.Panel, y = { OverlayShade.Dimensions.OverscrollLimit }) + } } diff --git a/packages/SystemUI/compose/features/src/com/android/systemui/scene/ui/composable/transitions/ToNotificationsShadeTransition.kt b/packages/SystemUI/compose/features/src/com/android/systemui/scene/ui/composable/transitions/ToNotificationsShadeTransition.kt index a6b268d59bf4..6b3b7602050d 100644 --- a/packages/SystemUI/compose/features/src/com/android/systemui/scene/ui/composable/transitions/ToNotificationsShadeTransition.kt +++ b/packages/SystemUI/compose/features/src/com/android/systemui/scene/ui/composable/transitions/ToNotificationsShadeTransition.kt @@ -50,8 +50,7 @@ fun TransitionBuilder.toNotificationsShadeTransition( } } - translate(OverlayShade.Elements.PanelBackground, Edge.Top) - translate(Notifications.Elements.NotificationScrim, Edge.Top) + translate(OverlayShade.Elements.Panel, Edge.Top) fractionRange(end = .5f) { fade(OverlayShade.Elements.Scrim) } diff --git a/packages/SystemUI/compose/features/src/com/android/systemui/scene/ui/composable/transitions/ToQuickSettingsShadeTransition.kt b/packages/SystemUI/compose/features/src/com/android/systemui/scene/ui/composable/transitions/ToQuickSettingsShadeTransition.kt index 2baaecf47ec5..ec2f14f34dba 100644 --- a/packages/SystemUI/compose/features/src/com/android/systemui/scene/ui/composable/transitions/ToQuickSettingsShadeTransition.kt +++ b/packages/SystemUI/compose/features/src/com/android/systemui/scene/ui/composable/transitions/ToQuickSettingsShadeTransition.kt @@ -48,7 +48,7 @@ fun TransitionBuilder.toQuickSettingsShadeTransition( } } - translate(OverlayShade.Elements.PanelBackground, Edge.Top) + translate(OverlayShade.Elements.Panel, Edge.Top) fractionRange(end = .5f) { fade(OverlayShade.Elements.Scrim) } } diff --git a/packages/SystemUI/compose/features/src/com/android/systemui/shade/ui/composable/OverlayShade.kt b/packages/SystemUI/compose/features/src/com/android/systemui/shade/ui/composable/OverlayShade.kt index 34cc6769eb40..a7302061d02f 100644 --- a/packages/SystemUI/compose/features/src/com/android/systemui/shade/ui/composable/OverlayShade.kt +++ b/packages/SystemUI/compose/features/src/com/android/systemui/shade/ui/composable/OverlayShade.kt @@ -79,7 +79,10 @@ fun SceneScope.OverlayShade( }, horizontalArrangement = horizontalArrangement, ) { - Panel(modifier = Modifier.panelSize(), content = content) + Panel( + modifier = Modifier.element(OverlayShade.Elements.Panel).panelSize(), + content = content + ) } } } @@ -138,6 +141,7 @@ private fun Modifier.panelSize(): Modifier { object OverlayShade { object Elements { val Scrim = ElementKey("OverlayShadeScrim", scenePicker = LowestZIndexScenePicker) + val Panel = ElementKey("OverlayShadePanel", scenePicker = LowestZIndexScenePicker) val PanelBackground = ElementKey("OverlayShadePanelBackground", scenePicker = LowestZIndexScenePicker) } @@ -153,6 +157,7 @@ object OverlayShade { val PanelCornerRadius = 46.dp val PanelWidthMedium = 390.dp val PanelWidthLarge = 474.dp + val OverscrollLimit = 100f } object Shapes { |