Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 2e2b8245 authored by Bharat Singh's avatar Bharat Singh Committed by Android (Google) Code Review
Browse files

Merge "[Flexiglass] Translate content on Lockscreen on "Lockscreen to Bouncer"...

Merge "[Flexiglass] Translate content on Lockscreen on "Lockscreen to Bouncer" transition" into main
parents 60cc1307 235c633f
Loading
Loading
Loading
Loading
+4 −2
Original line number Diff line number Diff line
@@ -109,6 +109,7 @@ import com.android.systemui.common.ui.compose.windowinsets.LocalScreenCornerRadi
import com.android.systemui.res.R
import com.android.systemui.scene.session.ui.composable.SaveableSession
import com.android.systemui.scene.session.ui.composable.sessionCoroutineScope
import com.android.systemui.scene.shared.model.Overlays
import com.android.systemui.scene.shared.model.Scenes
import com.android.systemui.shade.ui.composable.ShadeHeader
import com.android.systemui.statusbar.notification.stack.shared.model.AccessibilityScrollEvent
@@ -119,11 +120,11 @@ import com.android.systemui.statusbar.notification.stack.ui.view.NotificationScr
import com.android.systemui.statusbar.notification.stack.ui.viewmodel.NotificationTransitionThresholds.EXPANSION_FOR_MAX_CORNER_RADIUS
import com.android.systemui.statusbar.notification.stack.ui.viewmodel.NotificationTransitionThresholds.EXPANSION_FOR_MAX_SCRIM_ALPHA
import com.android.systemui.statusbar.notification.stack.ui.viewmodel.NotificationsPlaceholderViewModel
import kotlin.math.max
import kotlin.math.roundToInt
import kotlinx.coroutines.awaitCancellation
import kotlinx.coroutines.coroutineScope
import kotlinx.coroutines.launch
import kotlin.math.max
import kotlin.math.roundToInt

object Notifications {
    object Elements {
@@ -836,6 +837,7 @@ private fun shouldUseLockscreenStackBounds(state: TransitionState): Boolean {
            // Keep using the lockscreen stack bounds when transitioning from lockscreen
            // to other states for visual consistency, eg. the smart space should be visible.
            state.isTransitioning(from = Scenes.Lockscreen)
                    || state.isTransitioningBetween(content = Scenes.Lockscreen, other = Overlays.Bouncer)
    }
}

+3 −0
Original line number Diff line number Diff line
@@ -17,6 +17,7 @@
package com.android.systemui.scene.ui.composable.transitions

import androidx.compose.animation.core.tween
import androidx.compose.ui.unit.dp
import com.android.compose.animation.scene.TransitionBuilder
import com.android.systemui.plugins.keyguard.ui.composable.elements.LockscreenElementKeys
import kotlin.time.Duration.Companion.milliseconds
@@ -28,6 +29,8 @@ fun TransitionBuilder.bouncerToLockscreenTransition(durationScale: Double = 1.0)

    fractionRange(start = 0.95f) { fade(LockscreenElementKeys.StatusBar) }
    fractionRange(start = 0.8f) { fade(LockscreenElementKeys.Root) }

    translate(LockscreenElementKeys.Notifications.Stack, y = 0.dp)
}

private val DefaultDuration = 500.milliseconds
+13 −0
Original line number Diff line number Diff line
package com.android.systemui.scene.ui.composable.transitions

import androidx.compose.ui.unit.dp
import com.android.compose.animation.Easings
import com.android.compose.animation.scene.TransitionBuilder
import com.android.systemui.bouncer.ui.composable.Bouncer
import com.android.systemui.plugins.keyguard.ui.composable.elements.LockscreenElementKeys

fun TransitionBuilder.lockscreenToBouncerTransition(durationScale: Double = 1.0) {
    lockscreenToOverlayTransition(durationScale = durationScale)
    toBouncerTransition()

    fractionRange(end = 0.3f, easing = Easings.PredictiveBack) {
        fade(LockscreenElementKeys.Region.Upper)
        fade(LockscreenElementKeys.LockIcon)
        fade(LockscreenElementKeys.AmbientIndicationArea)
        fade(LockscreenElementKeys.Region.Lower)
        fade(LockscreenElementKeys.SettingsMenu)
        fade(LockscreenElementKeys.BehindScrim)
        translate(LockscreenElementKeys.Region.Upper, y = (-48).dp)
        translate(LockscreenElementKeys.Notifications.Stack, y = (-72).dp)
    }
}

fun TransitionBuilder.bouncerToLockscreenPreview() {