Adjust screen transitions (#8707)

* Fade transition between main navigation tabs
* Shared axis X between screen stacks

Activity transition is using a "close enough" shared axis X xml animation
This commit is contained in:
Ivan Iskandar
2022-12-10 05:23:00 +07:00
committed by GitHub
parent d97eab0328
commit 82a3a98a5a
17 changed files with 151 additions and 62 deletions
@@ -6,14 +6,13 @@ import cafe.adriel.voyager.core.screen.Screen
import cafe.adriel.voyager.navigator.LocalNavigator
import cafe.adriel.voyager.navigator.Navigator
import cafe.adriel.voyager.navigator.currentOrThrow
import cafe.adriel.voyager.transitions.ScreenTransition
import eu.kanade.presentation.components.TwoPanelBox
import eu.kanade.presentation.more.settings.screen.AboutScreen
import eu.kanade.presentation.more.settings.screen.SettingsBackupScreen
import eu.kanade.presentation.more.settings.screen.SettingsGeneralScreen
import eu.kanade.presentation.more.settings.screen.SettingsMainScreen
import eu.kanade.presentation.util.DefaultNavigatorScreenTransition
import eu.kanade.presentation.util.LocalBackPress
import eu.kanade.presentation.util.Transition
import eu.kanade.presentation.util.isTabletUi
class SettingsScreen private constructor(
@@ -42,10 +41,7 @@ class SettingsScreen private constructor(
}
}
CompositionLocalProvider(LocalBackPress provides pop) {
ScreenTransition(
navigator = it,
transition = { Transition.OneWayFade },
)
DefaultNavigatorScreenTransition(navigator = it)
}
},
)
@@ -65,12 +61,7 @@ class SettingsScreen private constructor(
SettingsMainScreen.Content(twoPane = true)
}
},
endContent = {
ScreenTransition(
navigator = it,
transition = { Transition.OneWayFade },
)
},
endContent = { DefaultNavigatorScreenTransition(navigator = it) },
)
}
}