summaryrefslogtreecommitdiff
path: root/merchant-terminal/src/main/java/net
diff options
context:
space:
mode:
authorTorsten Grote <t@grobox.de>2023-04-11 12:13:26 -0300
committerTorsten Grote <t@grobox.de>2023-04-11 12:13:26 -0300
commit92045c93baf45e627254246db4ea21f1eee11ce0 (patch)
tree04bd2b4dd092db064dc5c006f372577d1d40c104 /merchant-terminal/src/main/java/net
parentf5aced13fda3132d5ee3a6947fe95f7b7b22b98a (diff)
downloadtaler-android-92045c93baf45e627254246db4ea21f1eee11ce0.tar.gz
taler-android-92045c93baf45e627254246db4ea21f1eee11ce0.tar.bz2
taler-android-92045c93baf45e627254246db4ea21f1eee11ce0.zip
[pos] Ask for config on first start
prevents connection to demo URL without user confirmation
Diffstat (limited to 'merchant-terminal/src/main/java/net')
-rw-r--r--merchant-terminal/src/main/java/net/taler/merchantpos/MainActivity.kt4
-rw-r--r--merchant-terminal/src/main/java/net/taler/merchantpos/config/ConfigFetcherFragment.kt4
-rw-r--r--merchant-terminal/src/main/java/net/taler/merchantpos/config/ConfigFragment.kt10
-rw-r--r--merchant-terminal/src/main/java/net/taler/merchantpos/config/ConfigManager.kt2
-rw-r--r--merchant-terminal/src/main/java/net/taler/merchantpos/config/PosConfig.kt4
5 files changed, 11 insertions, 13 deletions
diff --git a/merchant-terminal/src/main/java/net/taler/merchantpos/MainActivity.kt b/merchant-terminal/src/main/java/net/taler/merchantpos/MainActivity.kt
index 5609429..4a46b27 100644
--- a/merchant-terminal/src/main/java/net/taler/merchantpos/MainActivity.kt
+++ b/merchant-terminal/src/main/java/net/taler/merchantpos/MainActivity.kt
@@ -75,8 +75,8 @@ class MainActivity : AppCompatActivity(), OnNavigationItemSelectedListener {
override fun onStart() {
super.onStart()
- if (!model.configManager.config.isValid() && nav.currentDestination?.id != R.id.nav_settings) {
- nav.navigate(R.id.action_global_merchantSettings)
+ if (!model.configManager.config.isValid()) {
+ if (nav.currentDestination?.id != R.id.nav_settings) nav.navigate(R.id.action_global_merchantSettings)
} else if (model.configManager.merchantConfig == null && nav.currentDestination?.id != R.id.configFetcher) {
nav.navigate(R.id.action_global_configFetcher)
}
diff --git a/merchant-terminal/src/main/java/net/taler/merchantpos/config/ConfigFetcherFragment.kt b/merchant-terminal/src/main/java/net/taler/merchantpos/config/ConfigFetcherFragment.kt
index 5564447..9e82a5a 100644
--- a/merchant-terminal/src/main/java/net/taler/merchantpos/config/ConfigFetcherFragment.kt
+++ b/merchant-terminal/src/main/java/net/taler/merchantpos/config/ConfigFetcherFragment.kt
@@ -45,9 +45,7 @@ class ConfigFetcherFragment : Fragment() {
return ui.root
}
- @Deprecated("Deprecated in Java")
- override fun onActivityCreated(savedInstanceState: Bundle?) {
- super.onActivityCreated(savedInstanceState)
+ override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
configManager.fetchConfig(configManager.config, false)
configManager.configUpdateResult.observe(viewLifecycleOwner) { result ->
when (result) {
diff --git a/merchant-terminal/src/main/java/net/taler/merchantpos/config/ConfigFragment.kt b/merchant-terminal/src/main/java/net/taler/merchantpos/config/ConfigFragment.kt
index 3ee5148..9a5b7a7 100644
--- a/merchant-terminal/src/main/java/net/taler/merchantpos/config/ConfigFragment.kt
+++ b/merchant-terminal/src/main/java/net/taler/merchantpos/config/ConfigFragment.kt
@@ -49,7 +49,7 @@ class ConfigFragment : Fragment() {
inflater: LayoutInflater,
container: ViewGroup?,
savedInstanceState: Bundle?
- ): View? {
+ ): View {
ui = FragmentMerchantConfigBinding.inflate(inflater, container, false)
return ui.root
}
@@ -74,11 +74,11 @@ class ConfigFragment : Fragment() {
password = ui.passwordView.editText!!.text.toString()
)
configManager.fetchConfig(config, true, ui.savePasswordCheckBox.isChecked)
- configManager.configUpdateResult.observe(viewLifecycleOwner, { result ->
+ configManager.configUpdateResult.observe(viewLifecycleOwner) { result ->
if (onConfigUpdate(result)) {
configManager.configUpdateResult.removeObservers(viewLifecycleOwner)
}
- })
+ }
}
ui.forgetPasswordButton.setOnClickListener {
configManager.forgetPassword()
@@ -93,8 +93,8 @@ class ConfigFragment : Fragment() {
super.onStart()
// focus password if this is the only empty field
if (ui.passwordView.editText!!.text.isBlank()
- && !ui.configUrlView.editText!!.text.isBlank()
- && !ui.usernameView.editText!!.text.isBlank()
+ && ui.configUrlView.editText!!.text.isNotBlank()
+ && ui.usernameView.editText!!.text.isNotBlank()
) {
ui.passwordView.requestFocus()
}
diff --git a/merchant-terminal/src/main/java/net/taler/merchantpos/config/ConfigManager.kt b/merchant-terminal/src/main/java/net/taler/merchantpos/config/ConfigManager.kt
index 8986fc0..2cc0d8c 100644
--- a/merchant-terminal/src/main/java/net/taler/merchantpos/config/ConfigManager.kt
+++ b/merchant-terminal/src/main/java/net/taler/merchantpos/config/ConfigManager.kt
@@ -74,7 +74,7 @@ class ConfigManager(
private val configurationReceivers = ArrayList<ConfigurationReceiver>()
var config = Config(
- configUrl = prefs.getString(SETTINGS_CONFIG_URL, CONFIG_URL_DEMO)!!,
+ configUrl = prefs.getString(SETTINGS_CONFIG_URL, "")!!,
username = prefs.getString(SETTINGS_USERNAME, CONFIG_USERNAME_DEMO)!!,
password = prefs.getString(SETTINGS_PASSWORD, CONFIG_PASSWORD_DEMO)!!
)
diff --git a/merchant-terminal/src/main/java/net/taler/merchantpos/config/PosConfig.kt b/merchant-terminal/src/main/java/net/taler/merchantpos/config/PosConfig.kt
index 1f1ab74..556f05f 100644
--- a/merchant-terminal/src/main/java/net/taler/merchantpos/config/PosConfig.kt
+++ b/merchant-terminal/src/main/java/net/taler/merchantpos/config/PosConfig.kt
@@ -31,8 +31,8 @@ data class Config(
val username: String,
val password: String
) {
- fun isValid() = !configUrl.isBlank()
- fun hasPassword() = !password.isBlank()
+ fun isValid() = configUrl.isNotBlank()
+ fun hasPassword() = password.isNotBlank()
}
@Serializable