summaryrefslogtreecommitdiff
path: root/app/src/main/java
diff options
context:
space:
mode:
authorTorsten Grote <t@grobox.de>2020-03-05 12:39:12 -0300
committerTorsten Grote <t@grobox.de>2020-03-05 12:39:12 -0300
commit0a070b2ac1f174c6f962d37a10f521981514b033 (patch)
tree6ec2523ace54bfe1c74314f5cb6c5b8f929cd613 /app/src/main/java
parent8589d5cae8087acbf25e7251e341f99fd2c7f9e2 (diff)
downloadwallet-android-0a070b2ac1f174c6f962d37a10f521981514b033.tar.gz
wallet-android-0a070b2ac1f174c6f962d37a10f521981514b033.tar.bz2
wallet-android-0a070b2ac1f174c6f962d37a10f521981514b033.zip
Add provisional dev mode checkbox to hide UI elements by default
Diffstat (limited to 'app/src/main/java')
-rw-r--r--app/src/main/java/net/taler/wallet/MainActivity.kt6
-rw-r--r--app/src/main/java/net/taler/wallet/ShowBalance.kt17
-rw-r--r--app/src/main/java/net/taler/wallet/WalletViewModel.kt15
-rw-r--r--app/src/main/java/net/taler/wallet/pending/PendingOperationsFragment.kt2
-rw-r--r--app/src/main/java/net/taler/wallet/pending/PendingOperationsManager.kt4
5 files changed, 32 insertions, 12 deletions
diff --git a/app/src/main/java/net/taler/wallet/MainActivity.kt b/app/src/main/java/net/taler/wallet/MainActivity.kt
index 1cdc9b3..bca5e33 100644
--- a/app/src/main/java/net/taler/wallet/MainActivity.kt
+++ b/app/src/main/java/net/taler/wallet/MainActivity.kt
@@ -69,7 +69,7 @@ class MainActivity : AppCompatActivity(), OnNavigationItemSelectedListener,
setSupportActionBar(toolbar)
val appBarConfiguration = AppBarConfiguration(
- setOf(R.id.showBalance, R.id.settings, R.id.walletHistory), drawer_layout
+ setOf(R.id.showBalance, R.id.settings, R.id.walletHistory, R.id.nav_pending_operations), drawer_layout
)
toolbar.setupWithNavController(nav, appBarConfiguration)
@@ -77,6 +77,10 @@ class MainActivity : AppCompatActivity(), OnNavigationItemSelectedListener,
progress_bar.visibility = if (show) VISIBLE else INVISIBLE
})
+ model.devMode.observe(this, Observer { enabled ->
+ nav_view.menu.findItem(R.id.nav_pending_operations).isVisible = enabled
+ })
+
if (intent.action == ACTION_VIEW) intent.dataString?.let { uri ->
handleTalerUri(uri, "intent")
}
diff --git a/app/src/main/java/net/taler/wallet/ShowBalance.kt b/app/src/main/java/net/taler/wallet/ShowBalance.kt
index 5448638..71ef87f 100644
--- a/app/src/main/java/net/taler/wallet/ShowBalance.kt
+++ b/app/src/main/java/net/taler/wallet/ShowBalance.kt
@@ -73,10 +73,13 @@ class ShowBalance : Fragment() {
onBalancesChanged(it)
})
+ model.devMode.observe(viewLifecycleOwner, Observer { enabled ->
+ delayedTransition()
+ testWithdrawButton.visibility = if (enabled) VISIBLE else GONE
+ })
testWithdrawButton.setOnClickListener {
withdrawManager.withdrawTestkudos()
}
-
withdrawManager.testWithdrawalInProgress.observe(viewLifecycleOwner, Observer { loading ->
Log.v("taler-wallet", "observing balance loading $loading in show balance")
testWithdrawButton.isEnabled = !loading
@@ -103,17 +106,23 @@ class ShowBalance : Fragment() {
model.loadBalances()
true
}
+ R.id.developer_mode -> {
+ item.isChecked = !item.isChecked
+ model.devMode.value = item.isChecked
+ true
+ }
else -> super.onOptionsItemSelected(item)
}
}
override fun onCreateOptionsMenu(menu: Menu, inflater: MenuInflater) {
inflater.inflate(R.menu.balance, menu)
+ menu.findItem(R.id.developer_mode).isChecked = model.devMode.value!!
super.onCreateOptionsMenu(menu, inflater)
}
private fun onBalancesChanged(balances: List<BalanceItem>) {
- beginDelayedTransition(view as ViewGroup)
+ delayedTransition()
if (balances.isEmpty()) {
balancesEmptyState.visibility = VISIBLE
balancesList.visibility = GONE
@@ -124,6 +133,10 @@ class ShowBalance : Fragment() {
}
}
+ private fun delayedTransition() {
+ beginDelayedTransition(view as ViewGroup)
+ }
+
}
class BalanceAdapter : Adapter<BalanceViewHolder>() {
diff --git a/app/src/main/java/net/taler/wallet/WalletViewModel.kt b/app/src/main/java/net/taler/wallet/WalletViewModel.kt
index 7baedcf..1126ced 100644
--- a/app/src/main/java/net/taler/wallet/WalletViewModel.kt
+++ b/app/src/main/java/net/taler/wallet/WalletViewModel.kt
@@ -52,6 +52,8 @@ class WalletViewModel(val app: Application) : AndroidViewModel(app) {
private val mBalances = MutableLiveData<List<BalanceItem>>()
val balances: LiveData<List<BalanceItem>> = mBalances.distinctUntilChanged()
+ val devMode = MutableLiveData(false)
+
private val mHistoryProgress = MutableLiveData<Boolean>()
val historyProgress: LiveData<Boolean> = mHistoryProgress
@@ -87,6 +89,11 @@ class WalletViewModel(val app: Application) : AndroidViewModel(app) {
val pendingOperationsManager: PendingOperationsManager =
PendingOperationsManager(walletBackendApi)
+ override fun onCleared() {
+ walletBackendApi.destroy()
+ super.onCleared()
+ }
+
@UiThread
fun loadBalances() {
if (activeGetBalance > 0) {
@@ -159,12 +166,4 @@ class WalletViewModel(val app: Application) : AndroidViewModel(app) {
walletBackendApi.sendRequest("tunnelResponse", respJson)
}
- fun retryPendingNow() {
- walletBackendApi.sendRequest("retryPendingNow", null)
- }
-
- override fun onCleared() {
- walletBackendApi.destroy()
- super.onCleared()
- }
}
diff --git a/app/src/main/java/net/taler/wallet/pending/PendingOperationsFragment.kt b/app/src/main/java/net/taler/wallet/pending/PendingOperationsFragment.kt
index 7595827..946e5ba 100644
--- a/app/src/main/java/net/taler/wallet/pending/PendingOperationsFragment.kt
+++ b/app/src/main/java/net/taler/wallet/pending/PendingOperationsFragment.kt
@@ -87,7 +87,7 @@ class PendingOperationsFragment : Fragment(), PendingOperationClickListener {
override fun onOptionsItemSelected(item: MenuItem): Boolean {
return when (item.itemId) {
R.id.retry_pending -> {
- model.retryPendingNow()
+ pendingOperationsManager.retryPendingNow()
true
}
else -> super.onOptionsItemSelected(item)
diff --git a/app/src/main/java/net/taler/wallet/pending/PendingOperationsManager.kt b/app/src/main/java/net/taler/wallet/pending/PendingOperationsManager.kt
index b6d5904..2125dbc 100644
--- a/app/src/main/java/net/taler/wallet/pending/PendingOperationsManager.kt
+++ b/app/src/main/java/net/taler/wallet/pending/PendingOperationsManager.kt
@@ -57,4 +57,8 @@ class PendingOperationsManager(private val walletBackendApi: WalletBackendApi) {
}
}
+ fun retryPendingNow() {
+ walletBackendApi.sendRequest("retryPendingNow", null)
+ }
+
}