diff --git a/ultrasonic/src/main/kotlin/org/moire/ultrasonic/fragment/EditServerFragment.kt b/ultrasonic/src/main/kotlin/org/moire/ultrasonic/fragment/EditServerFragment.kt index 8b253627..0da63dbb 100644 --- a/ultrasonic/src/main/kotlin/org/moire/ultrasonic/fragment/EditServerFragment.kt +++ b/ultrasonic/src/main/kotlin/org/moire/ultrasonic/fragment/EditServerFragment.kt @@ -186,6 +186,10 @@ class EditServerFragment : Fragment(), OnBackPressedHandler { .setBottomSpace(DIALOG_PADDING) .show() } + + serverAddressEditText?.editText?.setOnFocusChangeListener { _, hasFocus -> + if (!hasFocus) correctServerAddress() + } } override fun onStop() { @@ -193,6 +197,12 @@ class EditServerFragment : Fragment(), OnBackPressedHandler { super.onStop() } + private fun correctServerAddress() { + serverAddressEditText?.editText?.setText( + serverAddressEditText?.editText?.text?.trim(' ', '/') + ) + } + private fun updateColor(color: Int?) { val image = ContextCompat.getDrawable(requireContext(), R.drawable.thumb_drawable) currentColor = color ?: ServerColor.getBackgroundColor(requireContext(), null) @@ -296,6 +306,7 @@ class EditServerFragment : Fragment(), OnBackPressedHandler { isValid = false } else { try { + correctServerAddress() val urlString = serverAddressEditText!!.editText?.text.toString() url = URL(urlString) if (