[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[taler-taler-android] branch master updated: [wallet] navigate back to m
From: |
gnunet |
Subject: |
[taler-taler-android] branch master updated: [wallet] navigate back to main screen after outgoing push is complete |
Date: |
Tue, 18 Apr 2023 18:37:47 +0200 |
This is an automated email from the git hooks/post-receive script.
torsten-grote pushed a commit to branch master
in repository taler-android.
The following commit(s) were added to refs/heads/master by this push:
new 62c86e4 [wallet] navigate back to main screen after outgoing push is
complete
62c86e4 is described below
commit 62c86e421394492ff64cba0b65728817513254c9
Author: Torsten Grote <t@grobox.de>
AuthorDate: Tue Apr 18 13:37:40 2023 -0300
[wallet] navigate back to main screen after outgoing push is complete
---
.../java/net/taler/wallet/peer/OutgoingPushFragment.kt | 16 ++++++++++++++++
1 file changed, 16 insertions(+)
diff --git a/wallet/src/main/java/net/taler/wallet/peer/OutgoingPushFragment.kt
b/wallet/src/main/java/net/taler/wallet/peer/OutgoingPushFragment.kt
index 0aa029b..255aee5 100644
--- a/wallet/src/main/java/net/taler/wallet/peer/OutgoingPushFragment.kt
+++ b/wallet/src/main/java/net/taler/wallet/peer/OutgoingPushFragment.kt
@@ -20,10 +20,12 @@ import android.os.Bundle
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
+import androidx.activity.OnBackPressedCallback
import androidx.compose.ui.platform.ComposeView
import androidx.fragment.app.Fragment
import androidx.fragment.app.activityViewModels
import androidx.navigation.findNavController
+import androidx.navigation.fragment.findNavController
import net.taler.common.Amount
import net.taler.wallet.MainViewModel
import net.taler.wallet.R
@@ -34,6 +36,13 @@ class OutgoingPushFragment : Fragment() {
private val model: MainViewModel by activityViewModels()
private val peerManager get() = model.peerManager
+ // hacky way to change back action until we have navigation for compose
+ private val backPressedCallback = object : OnBackPressedCallback(false) {
+ override fun handleOnBackPressed() {
+ findNavController().navigate(R.id.action_nav_peer_push_to_nav_main)
+ }
+ }
+
override fun onCreateView(
inflater: LayoutInflater,
container: ViewGroup?,
@@ -42,11 +51,17 @@ class OutgoingPushFragment : Fragment() {
val amount = arguments?.getString("amount")?.let {
Amount.fromJSONString(it)
} ?: error("no amount passed")
+
+ requireActivity().onBackPressedDispatcher.addCallback(
+ viewLifecycleOwner, backPressedCallback
+ )
+
return ComposeView(requireContext()).apply {
setContent {
TalerSurface {
when (val state =
peerManager.pushState.collectAsStateLifecycleAware().value) {
is OutgoingIntro, OutgoingChecking, is OutgoingChecked
-> {
+ backPressedCallback.isEnabled = false
OutgoingPushIntroComposable(
state = state,
amount = amount,
@@ -54,6 +69,7 @@ class OutgoingPushFragment : Fragment() {
)
}
OutgoingCreating, is OutgoingResponse, is
OutgoingError -> {
+ backPressedCallback.isEnabled = true
OutgoingPushResultComposable(state) {
findNavController().navigate(R.id.action_nav_peer_push_to_nav_main)
}
--
To stop receiving notification emails like this one, please contact
gnunet@gnunet.org.
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [taler-taler-android] branch master updated: [wallet] navigate back to main screen after outgoing push is complete,
gnunet <=