summaryrefslogtreecommitdiff
path: root/wallet/src/main/java/net/taler/wallet/transactions/TransactionsFragment.kt
diff options
context:
space:
mode:
authorTorsten Grote <t@grobox.de>2022-08-17 14:40:58 -0300
committerTorsten Grote <t@grobox.de>2022-08-17 14:40:58 -0300
commit86b16475d4c198abca49d07edf8585c7e7e76d04 (patch)
treea5c2d192ea38147f7beae189805da6e80d80bc29 /wallet/src/main/java/net/taler/wallet/transactions/TransactionsFragment.kt
parentec08d9fcaf1927eb1ceff4771c0c4732c336c62c (diff)
downloadtaler-android-86b16475d4c198abca49d07edf8585c7e7e76d04.tar.gz
taler-android-86b16475d4c198abca49d07edf8585c7e7e76d04.tar.bz2
taler-android-86b16475d4c198abca49d07edf8585c7e7e76d04.zip
[wallet] Show FAB also in transaction list when having more than one currency
Diffstat (limited to 'wallet/src/main/java/net/taler/wallet/transactions/TransactionsFragment.kt')
-rw-r--r--wallet/src/main/java/net/taler/wallet/transactions/TransactionsFragment.kt31
1 files changed, 19 insertions, 12 deletions
diff --git a/wallet/src/main/java/net/taler/wallet/transactions/TransactionsFragment.kt b/wallet/src/main/java/net/taler/wallet/transactions/TransactionsFragment.kt
index e63d451..ff2574f 100644
--- a/wallet/src/main/java/net/taler/wallet/transactions/TransactionsFragment.kt
+++ b/wallet/src/main/java/net/taler/wallet/transactions/TransactionsFragment.kt
@@ -23,6 +23,7 @@ import android.view.Menu
import android.view.MenuInflater
import android.view.MenuItem
import android.view.View
+import android.view.View.INVISIBLE
import android.view.ViewGroup
import android.widget.Toast
import android.widget.Toast.LENGTH_LONG
@@ -42,6 +43,7 @@ import net.taler.common.fadeOut
import net.taler.wallet.MainViewModel
import net.taler.wallet.R
import net.taler.wallet.databinding.FragmentTransactionsBinding
+import net.taler.wallet.scanQrCode
interface OnTransactionClickListener {
fun onTransactionClicked(transaction: Transaction)
@@ -65,8 +67,8 @@ class TransactionsFragment : Fragment(), OnTransactionClickListener, ActionMode.
override fun onCreateView(
inflater: LayoutInflater, container: ViewGroup?,
- savedInstanceState: Bundle?
- ): View? {
+ savedInstanceState: Bundle?,
+ ): View {
ui = FragmentTransactionsBinding.inflate(inflater, container, false)
return ui.root
}
@@ -103,22 +105,27 @@ class TransactionsFragment : Fragment(), OnTransactionClickListener, ActionMode.
}
})
- transactionManager.progress.observe(viewLifecycleOwner, { show ->
- if (show) ui.progressBar.fadeIn() else ui.progressBar.fadeOut()
- })
- transactionManager.transactions.observe(viewLifecycleOwner, { result ->
- onTransactionsResult(result)
- })
- }
-
- override fun onActivityCreated(savedInstanceState: Bundle?) {
- super.onActivityCreated(savedInstanceState)
model.balances.observe(viewLifecycleOwner) { balances ->
+ // hide extra fab when in single currency mode (uses MainFragment's FAB)
+ if (balances.size == 1) ui.mainFab.visibility = INVISIBLE
balances.find { it.currency == currency }?.available?.let { amount: Amount ->
requireActivity().title =
getString(R.string.transactions_detail_title_balance, amount)
}
}
+ transactionManager.progress.observe(viewLifecycleOwner) { show ->
+ if (show) ui.progressBar.fadeIn() else ui.progressBar.fadeOut()
+ }
+ transactionManager.transactions.observe(viewLifecycleOwner) { result ->
+ onTransactionsResult(result)
+ }
+ ui.mainFab.setOnClickListener {
+ scanQrCode(requireActivity())
+ }
+ ui.mainFab.setOnLongClickListener {
+ findNavController().navigate(R.id.action_nav_transactions_to_nav_uri_input)
+ true
+ }
}
override fun onSaveInstanceState(outState: Bundle) {