|
@@ -1,13 +1,18 @@
|
|
package com.vpn.fastestvpnservice.navigation
|
|
package com.vpn.fastestvpnservice.navigation
|
|
|
|
|
|
import androidx.activity.ComponentActivity
|
|
import androidx.activity.ComponentActivity
|
|
|
|
+import androidx.compose.animation.AnimatedContentTransitionScope
|
|
|
|
+import androidx.compose.animation.EnterTransition
|
|
|
|
+import androidx.compose.animation.ExitTransition
|
|
import androidx.compose.animation.core.FastOutSlowInEasing
|
|
import androidx.compose.animation.core.FastOutSlowInEasing
|
|
import androidx.compose.animation.core.LinearEasing
|
|
import androidx.compose.animation.core.LinearEasing
|
|
import androidx.compose.animation.core.tween
|
|
import androidx.compose.animation.core.tween
|
|
import androidx.compose.animation.fadeIn
|
|
import androidx.compose.animation.fadeIn
|
|
|
|
+import androidx.compose.animation.fadeOut
|
|
import androidx.compose.animation.slideInVertically
|
|
import androidx.compose.animation.slideInVertically
|
|
import androidx.compose.runtime.Composable
|
|
import androidx.compose.runtime.Composable
|
|
import androidx.lifecycle.viewmodel.compose.viewModel
|
|
import androidx.lifecycle.viewmodel.compose.viewModel
|
|
|
|
+import androidx.navigation.NavBackStackEntry
|
|
import androidx.navigation.NavHostController
|
|
import androidx.navigation.NavHostController
|
|
import androidx.navigation.compose.NavHost
|
|
import androidx.navigation.compose.NavHost
|
|
import androidx.navigation.compose.composable
|
|
import androidx.navigation.compose.composable
|
|
@@ -25,10 +30,24 @@ import com.vpn.fastestvpnservice.sealedClass.Screen
|
|
fun SetUpNavGraph(navHostController: NavHostController,
|
|
fun SetUpNavGraph(navHostController: NavHostController,
|
|
activity: ComponentActivity
|
|
activity: ComponentActivity
|
|
) {
|
|
) {
|
|
|
|
+ val noEnterTransition : AnimatedContentTransitionScope<NavBackStackEntry>.() -> EnterTransition = {
|
|
|
|
+ fadeIn(
|
|
|
|
+ animationSpec = tween(durationMillis = 0),
|
|
|
|
+ initialAlpha = 1f
|
|
|
|
+ )
|
|
|
|
+ }
|
|
|
|
|
|
|
|
+ val noExitTransition : AnimatedContentTransitionScope<NavBackStackEntry>.() -> ExitTransition = {
|
|
|
|
+ fadeOut(
|
|
|
|
+ animationSpec = tween(durationMillis = 0),
|
|
|
|
+ targetAlpha = 1f
|
|
|
|
+ )
|
|
|
|
+ }
|
|
|
|
|
|
NavHost(navController = navHostController,
|
|
NavHost(navController = navHostController,
|
|
startDestination = Screen.Splash.route,
|
|
startDestination = Screen.Splash.route,
|
|
|
|
+ enterTransition = noEnterTransition,
|
|
|
|
+ exitTransition = noExitTransition
|
|
) {
|
|
) {
|
|
composable(route = Screen.Splash.route) {
|
|
composable(route = Screen.Splash.route) {
|
|
Splash(navHostController)
|
|
Splash(navHostController)
|