diff options
| author | 2024-03-13 13:30:34 +0000 | |
|---|---|---|
| committer | 2024-03-21 14:09:35 +0000 | |
| commit | 82d6aec97f47ce511b0cf44f32807894e29b3d33 (patch) | |
| tree | 222965179521c50ad3c249909115641546bed65c | |
| parent | d4a35ea4acb195c936026497f2a41a46f2676518 (diff) | |
[Flexiglass] Add overscroll DSL
This CL adds definitions of the overscroll behavior for certain scenes.
Additionally, the swipe specification is adjusted to create a soft
spring effect at the end of a transition.
Note: The overscroll definitions are arranged alphabetically.
Test: Manual tests
Bug: 327257459
Flag: NA
Change-Id: I873f62104f429e74e1185900490d50d87b00b022
| -rw-r--r-- | packages/SystemUI/compose/features/src/com/android/systemui/scene/ui/composable/SceneContainerTransitions.kt | 18 |
1 files changed, 18 insertions, 0 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 dea9485e916c..5349acd3678e 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 @@ -1,6 +1,11 @@ package com.android.systemui.scene.ui.composable +import androidx.compose.animation.core.Spring +import androidx.compose.animation.core.spring +import androidx.compose.foundation.gestures.Orientation import com.android.compose.animation.scene.transitions +import com.android.systemui.bouncer.ui.composable.Bouncer +import com.android.systemui.notifications.ui.composable.Notifications import com.android.systemui.scene.shared.model.Scenes import com.android.systemui.scene.shared.model.TransitionKeys.CollapseShadeInstantly import com.android.systemui.scene.shared.model.TransitionKeys.SlightlyFasterShadeCollapse @@ -27,6 +32,10 @@ import com.android.systemui.scene.ui.composable.transitions.shadeToQuickSettings * Please keep the list sorted alphabetically. */ val SceneContainerTransitions = transitions { + defaultSwipeSpec = spring(Spring.DampingRatioLowBouncy, Spring.StiffnessLow) + + // Scene transitions + from(Scenes.Bouncer, to = Scenes.Gone) { bouncerToGoneTransition() } from(Scenes.Gone, to = Scenes.Shade) { goneToShadeTransition() } from( @@ -64,4 +73,13 @@ val SceneContainerTransitions = transitions { from(Scenes.Lockscreen, to = Scenes.QuickSettings) { lockscreenToQuickSettingsTransition() } from(Scenes.Lockscreen, to = Scenes.Gone) { lockscreenToGoneTransition() } from(Scenes.Shade, to = Scenes.QuickSettings) { shadeToQuickSettingsTransition() } + + // Scene overscroll + + overscroll(Scenes.Bouncer, Orientation.Vertical) { + translate(Bouncer.Elements.Content, y = { absoluteDistance }) + } + overscroll(Scenes.Shade, Orientation.Vertical) { + translate(Notifications.Elements.NotificationScrim, y = { absoluteDistance }) + } } |