From 121337eb837aa21b2eeecefa14d381d717667128 Mon Sep 17 00:00:00 2001 From: Vitor Pamplona Date: Tue, 15 Oct 2024 16:02:20 -0400 Subject: [PATCH] Makes new post screen come in and out from the bottom --- .../amethyst/ui/navigation/AppNavigation.kt | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/amethyst/src/main/java/com/vitorpamplona/amethyst/ui/navigation/AppNavigation.kt b/amethyst/src/main/java/com/vitorpamplona/amethyst/ui/navigation/AppNavigation.kt index a677edfb1..91aedb7cb 100644 --- a/amethyst/src/main/java/com/vitorpamplona/amethyst/ui/navigation/AppNavigation.kt +++ b/amethyst/src/main/java/com/vitorpamplona/amethyst/ui/navigation/AppNavigation.kt @@ -29,7 +29,9 @@ import androidx.compose.animation.fadeOut import androidx.compose.animation.scaleIn import androidx.compose.animation.scaleOut import androidx.compose.animation.slideInHorizontally +import androidx.compose.animation.slideInVertically import androidx.compose.animation.slideOutHorizontally +import androidx.compose.animation.slideOutVertically import androidx.compose.runtime.Composable import androidx.compose.runtime.DisposableEffect import androidx.compose.runtime.LaunchedEffect @@ -271,10 +273,10 @@ fun AppNavigation( composable( Route.NIP47Setup.route, Route.NIP47Setup.arguments, - enterTransition = { slideInHorizontallyFromEnd }, + enterTransition = { slideInVerticallyFromBottom }, exitTransition = { scaleOut }, popEnterTransition = { scaleIn }, - popExitTransition = { slideOutHorizontallyToEnd }, + popExitTransition = { slideOutVerticallyToBottom }, ) { val nip47 = it.arguments?.getString("nip47") @@ -284,10 +286,10 @@ fun AppNavigation( composable( Route.NewPost.route, Route.NewPost.arguments, - enterTransition = { slideInHorizontallyFromEnd }, + enterTransition = { slideInVerticallyFromBottom }, exitTransition = { scaleOut }, popEnterTransition = { scaleIn }, - popExitTransition = { slideOutHorizontallyToEnd }, + popExitTransition = { slideOutVerticallyToBottom }, ) { val baseReplyTo = it.arguments?.getString("baseReplyTo") val quote = it.arguments?.getString("quote") @@ -431,6 +433,9 @@ private fun isSameRoute( return false } +val slideInVerticallyFromBottom = slideInVertically(animationSpec = tween(), initialOffsetY = { it }) +val slideOutVerticallyToBottom = slideOutVertically(animationSpec = tween(), targetOffsetY = { it }) + val slideInHorizontallyFromEnd = slideInHorizontally(animationSpec = tween(), initialOffsetX = { it }) val slideOutHorizontallyToEnd = slideOutHorizontally(animationSpec = tween(), targetOffsetX = { it })