From 2a719e4e82a0e33c822a0b8e668a6a0312be1b6a Mon Sep 17 00:00:00 2001 From: Torsten Grote Date: Fri, 8 May 2020 14:09:52 -0300 Subject: [wallet] Show versions in settings when dev mode is on --- .../main/java/net/taler/wallet/SettingsFragment.kt | 28 ++++++++++++++-- .../src/main/res/drawable/ic_account_balance.xml | 1 + .../res/drawable/ic_account_balance_wallet.xml | 1 + wallet/src/main/res/drawable/ic_add_circle.xml | 1 + wallet/src/main/res/drawable/ic_adjust.xml | 10 ++++++ wallet/src/main/res/drawable/ic_nuke.xml | 10 ++++++ wallet/src/main/res/drawable/ic_store_mall.xml | 10 ++++++ wallet/src/main/res/values/strings.xml | 5 +++ wallet/src/main/res/xml/settings_main.xml | 37 ++++++++++++++++++++++ 9 files changed, 101 insertions(+), 2 deletions(-) create mode 100644 wallet/src/main/res/drawable/ic_adjust.xml create mode 100644 wallet/src/main/res/drawable/ic_nuke.xml create mode 100644 wallet/src/main/res/drawable/ic_store_mall.xml diff --git a/wallet/src/main/java/net/taler/wallet/SettingsFragment.kt b/wallet/src/main/java/net/taler/wallet/SettingsFragment.kt index c4622a6..2020c49 100644 --- a/wallet/src/main/java/net/taler/wallet/SettingsFragment.kt +++ b/wallet/src/main/java/net/taler/wallet/SettingsFragment.kt @@ -26,6 +26,9 @@ import androidx.preference.PreferenceFragmentCompat import androidx.preference.SwitchPreferenceCompat import com.google.android.material.snackbar.BaseTransientBottomBar.LENGTH_SHORT import com.google.android.material.snackbar.Snackbar +import net.taler.wallet.BuildConfig.VERSION_CODE +import net.taler.wallet.BuildConfig.VERSION_NAME +import net.taler.wallet.BuildConfig.WALLET_CORE_VERSION class SettingsFragment : PreferenceFragmentCompat() { @@ -35,12 +38,30 @@ class SettingsFragment : PreferenceFragmentCompat() { private lateinit var prefDevMode: SwitchPreferenceCompat private lateinit var prefWithdrawTest: Preference + private lateinit var prefVersionApp: Preference + private lateinit var prefVersionCore: Preference + private lateinit var prefVersionExchange: Preference + private lateinit var prefVersionMerchant: Preference private lateinit var prefReset: Preference + private val devPrefs by lazy { + listOf( + prefWithdrawTest, + prefVersionApp, + prefVersionCore, + prefVersionExchange, + prefVersionMerchant, + prefReset + ) + } override fun onCreatePreferences(savedInstanceState: Bundle?, rootKey: String?) { setPreferencesFromResource(R.xml.settings_main, rootKey) prefDevMode = findPreference("pref_dev_mode")!! prefWithdrawTest = findPreference("pref_testkudos")!! + prefVersionApp = findPreference("pref_version_app")!! + prefVersionCore = findPreference("pref_version_core")!! + prefVersionExchange = findPreference("pref_version_protocol_exchange")!! + prefVersionMerchant = findPreference("pref_version_protocol_merchant")!! prefReset = findPreference("pref_reset")!! } @@ -49,8 +70,11 @@ class SettingsFragment : PreferenceFragmentCompat() { model.devMode.observe(viewLifecycleOwner, Observer { enabled -> prefDevMode.isChecked = enabled - prefWithdrawTest.isVisible = enabled - prefReset.isVisible = enabled + if (enabled) { + prefVersionApp.summary = "$VERSION_NAME ($VERSION_CODE)" + prefVersionCore.summary = WALLET_CORE_VERSION + } + devPrefs.forEach { it.isVisible = enabled } }) prefDevMode.setOnPreferenceChangeListener { _, newValue -> model.devMode.value = newValue as Boolean diff --git a/wallet/src/main/res/drawable/ic_account_balance.xml b/wallet/src/main/res/drawable/ic_account_balance.xml index 3f10d02..78836a0 100644 --- a/wallet/src/main/res/drawable/ic_account_balance.xml +++ b/wallet/src/main/res/drawable/ic_account_balance.xml @@ -17,6 +17,7 @@ + + diff --git a/wallet/src/main/res/drawable/ic_nuke.xml b/wallet/src/main/res/drawable/ic_nuke.xml new file mode 100644 index 0000000..71a075a --- /dev/null +++ b/wallet/src/main/res/drawable/ic_nuke.xml @@ -0,0 +1,10 @@ + + + \ No newline at end of file diff --git a/wallet/src/main/res/drawable/ic_store_mall.xml b/wallet/src/main/res/drawable/ic_store_mall.xml new file mode 100644 index 0000000..53db426 --- /dev/null +++ b/wallet/src/main/res/drawable/ic_store_mall.xml @@ -0,0 +1,10 @@ + + + diff --git a/wallet/src/main/res/values/strings.xml b/wallet/src/main/res/values/strings.xml index e01a0f0..a28545f 100644 --- a/wallet/src/main/res/values/strings.xml +++ b/wallet/src/main/res/values/strings.xml @@ -138,6 +138,11 @@ GNU Taler is immune against many types of fraud, such as phishing of credit card Shows more information intended for debugging Withdraw TESTKUDOS Get money for testing + App Version + Wallet Core Version + Supported Exchange Versions + Supported Merchant Versions + Unknown Reset Wallet (dangerous!) Throws away your money diff --git a/wallet/src/main/res/xml/settings_main.xml b/wallet/src/main/res/xml/settings_main.xml index d200bb5..f4cc34e 100644 --- a/wallet/src/main/res/xml/settings_main.xml +++ b/wallet/src/main/res/xml/settings_main.xml @@ -32,6 +32,43 @@ tools:isPreferenceVisible="true" /> + + + + + + + +