diff options
Diffstat (limited to 'wallet')
-rw-r--r-- | wallet/src/main/java/net/taler/wallet/settings/SettingsFragment.kt | 24 | ||||
-rw-r--r-- | wallet/src/main/res/values/strings.xml | 8 |
2 files changed, 26 insertions, 6 deletions
diff --git a/wallet/src/main/java/net/taler/wallet/settings/SettingsFragment.kt b/wallet/src/main/java/net/taler/wallet/settings/SettingsFragment.kt index 54d6dc0..f21bd44 100644 --- a/wallet/src/main/java/net/taler/wallet/settings/SettingsFragment.kt +++ b/wallet/src/main/java/net/taler/wallet/settings/SettingsFragment.kt @@ -139,7 +139,7 @@ class SettingsFragment : PreferenceFragmentCompat() { true } prefImportDb.setOnPreferenceClickListener { - dbImportLauncher.launch(arrayOf("application/json")) + showImportDialog() true } prefTest.setOnPreferenceClickListener { @@ -152,15 +152,27 @@ class SettingsFragment : PreferenceFragmentCompat() { } } + private fun showImportDialog() { + MaterialAlertDialogBuilder(requireContext(), R.style.MaterialAlertDialog_Material3) + .setMessage(R.string.settings_dialog_import_message) + .setNegativeButton(R.string.import_db) { _, _ -> + dbImportLauncher.launch(arrayOf("application/json")) + } + .setPositiveButton(R.string.cancel) { _, _ -> + Snackbar.make(requireView(), getString(R.string.settings_alert_import_canceled), LENGTH_SHORT).show() + } + .show() + } + private fun showResetDialog() { MaterialAlertDialogBuilder(requireContext(), R.style.MaterialAlertDialog_Material3) - .setMessage("Do you really want to reset the wallet and lose all coins and purchases?") - .setPositiveButton("Reset") { _, _ -> + .setMessage(R.string.settings_dialog_reset_message) + .setNegativeButton(R.string.reset) { _, _ -> model.dangerouslyReset() - Snackbar.make(requireView(), "Wallet has been reset", LENGTH_SHORT).show() + Snackbar.make(requireView(), getString(R.string.settings_alert_reset_done), LENGTH_SHORT).show() } - .setNegativeButton("Cancel") { _, _ -> - Snackbar.make(requireView(), "Reset cancelled", LENGTH_SHORT).show() + .setPositiveButton(R.string.cancel) { _, _ -> + Snackbar.make(requireView(), getString(R.string.settings_alert_reset_canceled), LENGTH_SHORT).show() } .show() } diff --git a/wallet/src/main/res/values/strings.xml b/wallet/src/main/res/values/strings.xml index 2533820..09feee6 100644 --- a/wallet/src/main/res/values/strings.xml +++ b/wallet/src/main/res/values/strings.xml @@ -59,6 +59,8 @@ GNU Taler is immune against many types of fraud, such as phishing of credit card <string name="currency">Currency</string> <!-- The count should be mirrored in RTL languages --> <string name="char_count">%1$d/%2$d</string> + <string name="import_db">Import</string> + <string name="reset">Reset</string> <string name="offline">Operation requires internet access. Please ensure your internet connection works and try again.</string> <string name="offline_banner">No internet access</string> @@ -275,6 +277,12 @@ GNU Taler is immune against many types of fraud, such as phishing of credit card <string name="settings_reset">Reset Wallet (dangerous!)</string> <string name="settings_reset_summary">Throws away your money</string> + <string name="settings_dialog_reset_message">Do you really want to reset the wallet and lose all coins and purchases?</string> + <string name="settings_dialog_import_message">This operation will overwrite your existing database. Do you want to continue?</string> + <string name="settings_alert_reset_done">Wallet has been reset</string> + <string name="settings_alert_reset_canceled">Reset cancelled</string> + <string name="settings_alert_import_canceled">Import cancelled</string> + <string name="refund_title">Refund</string> <string name="refund_error">Error processing refund</string> <string name="refund_success">Refund received!</string> |