mirror of
https://github.com/android-password-store/Android-Password-Store
synced 2025-08-30 05:48:09 +00:00
fix(app): address UI inconsistencies in proxy configuration screen
This commit is contained in:
parent
448ed3e575
commit
e17a17a8e8
@ -46,6 +46,7 @@
|
||||
<activity
|
||||
android:name=".ui.proxy.ProxySelectorActivity"
|
||||
android:exported="false"
|
||||
android:label="@string/activity_proxy_label"
|
||||
android:windowSoftInputMode="adjustResize" />
|
||||
|
||||
<activity
|
||||
|
@ -12,6 +12,7 @@ import android.os.Bundle
|
||||
import android.os.Handler
|
||||
import android.os.Looper
|
||||
import android.util.Patterns
|
||||
import android.view.MenuItem
|
||||
import androidx.appcompat.app.AppCompatActivity
|
||||
import androidx.core.content.edit
|
||||
import androidx.core.os.postDelayed
|
||||
@ -27,8 +28,6 @@ import app.passwordstore.util.settings.PreferenceKeys
|
||||
import dagger.hilt.android.AndroidEntryPoint
|
||||
import javax.inject.Inject
|
||||
|
||||
private val WEB_ADDRESS_REGEX = Patterns.WEB_URL.toRegex()
|
||||
|
||||
@AndroidEntryPoint
|
||||
class ProxySelectorActivity : AppCompatActivity() {
|
||||
|
||||
@ -36,9 +35,11 @@ class ProxySelectorActivity : AppCompatActivity() {
|
||||
@ProxyPreferences @Inject lateinit var proxyPrefs: SharedPreferences
|
||||
@Inject lateinit var proxyUtils: ProxyUtils
|
||||
private val binding by viewBinding(ActivityProxySelectorBinding::inflate)
|
||||
|
||||
override fun onCreate(savedInstanceState: Bundle?) {
|
||||
super.onCreate(savedInstanceState)
|
||||
setContentView(binding.root)
|
||||
supportActionBar?.setDisplayHomeAsUpEnabled(true)
|
||||
with(binding) {
|
||||
proxyHost.setText(proxyPrefs.getString(PreferenceKeys.PROXY_HOST))
|
||||
proxyUser.setText(proxyPrefs.getString(PreferenceKeys.PROXY_USERNAME))
|
||||
@ -61,6 +62,16 @@ class ProxySelectorActivity : AppCompatActivity() {
|
||||
}
|
||||
}
|
||||
|
||||
override fun onOptionsItemSelected(item: MenuItem): Boolean {
|
||||
when (item.itemId) {
|
||||
android.R.id.home -> {
|
||||
onBackPressedDispatcher.onBackPressed()
|
||||
}
|
||||
else -> return super.onOptionsItemSelected(item)
|
||||
}
|
||||
return true
|
||||
}
|
||||
|
||||
private fun isNumericAddress(text: CharSequence): Boolean {
|
||||
return if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q) {
|
||||
InetAddresses.isNumericAddress(text as String)
|
||||
@ -91,4 +102,8 @@ class ProxySelectorActivity : AppCompatActivity() {
|
||||
proxyUtils.setDefaultProxy()
|
||||
Handler(Looper.getMainLooper()).postDelayed(500) { finish() }
|
||||
}
|
||||
|
||||
private companion object {
|
||||
private val WEB_ADDRESS_REGEX = Patterns.WEB_URL.toRegex()
|
||||
}
|
||||
}
|
||||
|
@ -344,6 +344,7 @@
|
||||
<string name="git_scheme_disallowed_message">The git protocol provided by git-daemon performs no transport encryption and is unsuitable for secure operations.</string>
|
||||
|
||||
<!-- Proxy configuration activity -->
|
||||
<string name="activity_proxy_label">Proxy settings</string>
|
||||
<string name="proxy_hostname">Proxy hostname</string>
|
||||
<string name="port">Port</string>
|
||||
<string name="pref_edit_proxy_settings">HTTP(S) proxy settings</string>
|
||||
|
Loading…
x
Reference in New Issue
Block a user