Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ import com.arkivanov.decompose.router.RouterImpl
import com.arkivanov.decompose.router.StackHolderImpl
import com.arkivanov.decompose.router.StackNavigatorImpl
import com.arkivanov.decompose.router.StackSaverImpl
import com.arkivanov.essenty.backpressed.BackPressedRegistry
import com.arkivanov.essenty.backpressed.BackPressedHandler
import com.arkivanov.essenty.instancekeeper.InstanceKeeper
import com.arkivanov.essenty.lifecycle.Lifecycle
import com.arkivanov.essenty.parcelable.Parcelable
Expand All @@ -17,7 +17,7 @@ internal class DefaultRouterFactory(
private val lifecycle: Lifecycle,
private val stateKeeper: StateKeeper,
private val instanceKeeper: InstanceKeeper,
private val backPressedRegistry: BackPressedRegistry
private val backPressedHandler: BackPressedHandler
) : RouterFactory {

override fun <C : Parcelable, T : Any> router(
Expand All @@ -32,7 +32,7 @@ internal class DefaultRouterFactory(

return RouterImpl(
lifecycle = lifecycle,
backPressedRegistry = backPressedRegistry,
backPressedHandler = backPressedHandler,
popOnBackPressed = handleBackButton,
stackHolder = StackHolderImpl(
initialConfiguration = initialConfiguration,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,13 +6,13 @@ import com.arkivanov.decompose.RouterState
import com.arkivanov.decompose.ensureNeverFrozen
import com.arkivanov.decompose.pop
import com.arkivanov.decompose.value.MutableValue
import com.arkivanov.essenty.backpressed.BackPressedRegistry
import com.arkivanov.essenty.backpressed.BackPressedHandler
import com.arkivanov.essenty.lifecycle.Lifecycle
import com.arkivanov.essenty.lifecycle.doOnDestroy

internal class RouterImpl<C : Any, T : Any>(
lifecycle: Lifecycle,
private val backPressedRegistry: BackPressedRegistry,
private val backPressedHandler: BackPressedHandler,
private val popOnBackPressed: Boolean,
private val stackHolder: StackHolder<C, T>,
private val navigator: StackNavigator<C, T>
Expand All @@ -27,12 +27,12 @@ internal class RouterImpl<C : Any, T : Any>(
private val queue = ArrayDeque<(List<C>) -> List<C>>()

init {
backPressedRegistry.register(onBackPressedHandler)
backPressedHandler.register(onBackPressedHandler)
lifecycle.doOnDestroy(::destroy)
}

private fun destroy() {
backPressedRegistry.unregister(onBackPressedHandler)
backPressedHandler.unregister(onBackPressedHandler)
}

override fun navigate(transformer: (stack: List<C>) -> List<C>) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -64,7 +64,7 @@ class RouterTest {
private fun router(initialStack: List<Config>): Router<Config, Config> =
RouterImpl(
lifecycle = LifecycleRegistry(),
backPressedRegistry = BackPressedDispatcher(),
backPressedHandler = BackPressedDispatcher(),
popOnBackPressed = false,
stackHolder = TestStackHolder(routerStack(initialStack)),
navigator = navigator
Expand Down
2 changes: 1 addition & 1 deletion gradle.properties
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ org.gradle.caching=true
systemProp.org.gradle.internal.publish.checksums.insecure=true

decomposeVersion=0.2.6
essentyVersion=0.1.0
essentyVersion=0.1.1
kotlinVersion=1.5.10
junitVersion=4.13.2
composeJetpackVersion=1.0.0-beta08
Expand Down