summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author omarmt <omarmt@google.com> 2024-03-13 13:30:34 +0000
committer omarmt <omarmt@google.com> 2024-03-21 14:09:35 +0000
commit82d6aec97f47ce511b0cf44f32807894e29b3d33 (patch)
tree222965179521c50ad3c249909115641546bed65c
parentd4a35ea4acb195c936026497f2a41a46f2676518 (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.kt18
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 })
+ }
}