Browse Source

Pin: use moveTaskToBack instead of finish

pull/1554/head
ganfra 11 months ago
parent
commit
ea0963c0c8
  1. 4
      appnav/src/main/kotlin/io/element/android/appnav/BackstackExt.kt
  2. 2
      appnav/src/main/kotlin/io/element/android/appnav/LoggedInFlowNode.kt

4
appnav/src/main/kotlin/io/element/android/appnav/BackstackExt.kt

@ -48,7 +48,7 @@ fun <T : Any> BackStack<T>.removeLast(element: T) {
} }
@Composable @Composable
fun FinishActivityBackHandler(enabled: Boolean = true) { fun MoveActivityToBackgroundBackHandler(enabled: Boolean = true) {
fun Context.findActivity(): ComponentActivity? = when (this) { fun Context.findActivity(): ComponentActivity? = when (this) {
is ComponentActivity -> this is ComponentActivity -> this
@ -58,7 +58,7 @@ fun FinishActivityBackHandler(enabled: Boolean = true) {
val context = LocalContext.current val context = LocalContext.current
BackHandler(enabled = enabled) { BackHandler(enabled = enabled) {
context.findActivity()?.finish() context.findActivity()?.moveTaskToBack(false)
} }
} }

2
appnav/src/main/kotlin/io/element/android/appnav/LoggedInFlowNode.kt

@ -351,7 +351,7 @@ class LoggedInFlowNode @AssistedInject constructor(
} }
} }
PinState.Locked -> { PinState.Locked -> {
FinishActivityBackHandler() MoveActivityToBackgroundBackHandler()
PermanentChild(permanentNavModel = permanentNavModel, navTarget = NavTarget.LockPermanent) PermanentChild(permanentNavModel = permanentNavModel, navTarget = NavTarget.LockPermanent)
} }
} }

Loading…
Cancel
Save