summaryrefslogtreecommitdiff
path: root/wallet/src/main/java/net/taler/wallet/BalanceFragment.kt
diff options
context:
space:
mode:
Diffstat (limited to 'wallet/src/main/java/net/taler/wallet/BalanceFragment.kt')
-rw-r--r--wallet/src/main/java/net/taler/wallet/BalanceFragment.kt18
1 files changed, 14 insertions, 4 deletions
diff --git a/wallet/src/main/java/net/taler/wallet/BalanceFragment.kt b/wallet/src/main/java/net/taler/wallet/BalanceFragment.kt
index d871cfb..3d5364b 100644
--- a/wallet/src/main/java/net/taler/wallet/BalanceFragment.kt
+++ b/wallet/src/main/java/net/taler/wallet/BalanceFragment.kt
@@ -31,6 +31,7 @@ import android.widget.TextView
import androidx.fragment.app.Fragment
import androidx.fragment.app.activityViewModels
import androidx.lifecycle.Observer
+import androidx.navigation.fragment.findNavController
import androidx.recyclerview.widget.DividerItemDecoration
import androidx.recyclerview.widget.LinearLayoutManager
import androidx.recyclerview.widget.LinearLayoutManager.VERTICAL
@@ -41,13 +42,17 @@ import com.google.zxing.integration.android.IntentIntegrator.QR_CODE
import kotlinx.android.synthetic.main.fragment_show_balance.*
import net.taler.wallet.BalanceAdapter.BalanceViewHolder
-class BalanceFragment : Fragment() {
+interface BalanceClickListener {
+ fun onBalanceClick()
+}
+
+class BalanceFragment : Fragment(), BalanceClickListener {
private val model: WalletViewModel by activityViewModels()
private val withdrawManager by lazy { model.withdrawManager }
private var reloadBalanceMenuItem: MenuItem? = null
- private val balancesAdapter = BalanceAdapter()
+ private val balancesAdapter = BalanceAdapter(this)
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
@@ -141,9 +146,13 @@ class BalanceFragment : Fragment() {
beginDelayedTransition(view as ViewGroup)
}
+ override fun onBalanceClick() {
+ findNavController().navigate(R.id.walletHistory)
+ }
+
}
-class BalanceAdapter : Adapter<BalanceViewHolder>() {
+class BalanceAdapter(private val listener: BalanceClickListener) : Adapter<BalanceViewHolder>() {
private var items = emptyList<BalanceItem>()
@@ -169,13 +178,14 @@ class BalanceAdapter : Adapter<BalanceViewHolder>() {
this.notifyDataSetChanged()
}
- class BalanceViewHolder(private val v: View) : ViewHolder(v) {
+ inner class BalanceViewHolder(private val v: View) : ViewHolder(v) {
private val currencyView: TextView = v.findViewById(R.id.balance_currency)
private val amountView: TextView = v.findViewById(R.id.balance_amount)
private val balanceInboundAmount: TextView = v.findViewById(R.id.balanceInboundAmount)
private val balanceInboundLabel: TextView = v.findViewById(R.id.balanceInboundLabel)
fun bind(item: BalanceItem) {
+ v.setOnClickListener { listener.onBalanceClick() }
currencyView.text = item.available.currency
amountView.text = item.available.amountStr