Skip to content

Commit

Permalink
Merge pull request #535 from Automattic/hamorillo/498-alttext-transit…
Browse files Browse the repository at this point in the history
…ions

QuickEditor: Add enter/exit transitions to AltText and AvatarSelection composables
  • Loading branch information
hamorillo authored Jan 15, 2025
2 parents a8060db + 6b06712 commit fb62c50
Showing 1 changed file with 14 additions and 1 deletion.
Original file line number Diff line number Diff line change
@@ -1,7 +1,11 @@
package com.gravatar.quickeditor.ui.editor

import androidx.compose.animation.AnimatedContentTransitionScope
import androidx.compose.animation.EnterTransition
import androidx.compose.animation.ExitTransition
import androidx.compose.animation.expandVertically
import androidx.compose.animation.fadeIn
import androidx.compose.animation.shrinkVertically
import androidx.compose.runtime.Composable
import androidx.compose.runtime.DisposableEffect
import androidx.navigation.NavGraphBuilder
Expand Down Expand Up @@ -141,7 +145,14 @@ private fun NavGraphBuilder.addAvatarPickerGraph(
route = QuickEditorPage.EDITOR.name,
startDestination = EditorNavDestinations.AVATAR_SELECTION.name,
) {
composable(route = EditorNavDestinations.AVATAR_SELECTION.name) {
composable(
route = EditorNavDestinations.AVATAR_SELECTION.name,
enterTransition = { fadeIn() },
popEnterTransition = { fadeIn() + expandVertically() },
exitTransition = {
slideOutOfContainer(AnimatedContentTransitionScope.SlideDirection.Start) + shrinkVertically()
},
) {
AvatarPicker(
gravatarQuickEditorParams = gravatarQuickEditorParams,
handleExpiredSession = handleExpiredSession,
Expand All @@ -160,6 +171,8 @@ private fun NavGraphBuilder.addAvatarPickerGraph(
navArgument("email") { type = NavType.StringType },
navArgument("avatarId") { type = NavType.StringType },
),
exitTransition = { slideOutOfContainer(AnimatedContentTransitionScope.SlideDirection.End) },
enterTransition = { slideIntoContainer(AnimatedContentTransitionScope.SlideDirection.Start) },
) {
val email = requireNotNull(it.arguments?.getString("email"))
val avatarId = requireNotNull(it.arguments?.getString("avatarId"))
Expand Down

0 comments on commit fb62c50

Please sign in to comment.