diff --git a/app/src/main/java/com/nextcloud/talk/models/json/translations/TranslateData.kt b/app/src/main/java/com/nextcloud/talk/models/json/translations/TranslateData.kt index 2f37fb57f..9ebfdd971 100644 --- a/app/src/main/java/com/nextcloud/talk/models/json/translations/TranslateData.kt +++ b/app/src/main/java/com/nextcloud/talk/models/json/translations/TranslateData.kt @@ -27,12 +27,11 @@ import kotlinx.parcelize.Parcelize @Parcelize @JsonObject data class TranslateData( - @JsonField(name = ["text"]) var text: String?, @JsonField(name = ["from"]) var fromLanguage: String? ) : Parcelable { // This constructor is added to work with the 'com.bluelinelabs.logansquare.annotation.JsonObject' - constructor() : this(null, null ) + constructor() : this(null, null) } diff --git a/app/src/main/java/com/nextcloud/talk/translate/TranslateActivity.kt b/app/src/main/java/com/nextcloud/talk/translate/TranslateActivity.kt index 520dce1b2..43feedde8 100644 --- a/app/src/main/java/com/nextcloud/talk/translate/TranslateActivity.kt +++ b/app/src/main/java/com/nextcloud/talk/translate/TranslateActivity.kt @@ -129,15 +129,7 @@ class TranslateActivity : BaseActivity() { fromLanguages = fromLanguagesSet.toTypedArray() toLanguages = toLanguagesSet.toTypedArray() - binding.fromLanguageSpinner.adapter = ArrayAdapter( - this, android.R.layout.simple_spinner_dropdown_item, - fromLanguages - ) - - binding.toLanguageSpinner.adapter = ArrayAdapter( - this, android.R.layout.simple_spinner_dropdown_item, - toLanguages - ) + fillSpinners() } private fun enableSpinners(value: Boolean) { @@ -174,6 +166,7 @@ class TranslateActivity : BaseActivity() { } override fun onError(e: Throwable) { + Log.w(TAG, "Error while translating message", e) binding.progressBar.visibility = View.GONE val dialogBuilder = MaterialAlertDialogBuilder(this@TranslateActivity) .setIcon( @@ -210,6 +203,10 @@ class TranslateActivity : BaseActivity() { return Locale.getDefault().language } + return getISOFromServer(language) + } + + private fun getISOFromServer(language: String): String { val currentUser: User = userManager.currentUser.blockingGet() val json = JSONArray(CapabilitiesUtilNew.getLanguages(currentUser).toString()) @@ -224,14 +221,7 @@ class TranslateActivity : BaseActivity() { } private fun setupSpinners() { - binding.fromLanguageSpinner.adapter = ArrayAdapter( - this, android.R.layout.simple_spinner_dropdown_item, - fromLanguages - ) - binding.toLanguageSpinner.adapter = ArrayAdapter( - this, android.R.layout.simple_spinner_dropdown_item, - toLanguages - ) + fillSpinners() binding.fromLanguageSpinner.onItemSelectedListener = object : AdapterView.OnItemSelectedListener { override fun onItemSelected(parent: AdapterView<*>, view: View, position: Int, id: Long) { @@ -264,6 +254,19 @@ class TranslateActivity : BaseActivity() { } } + private fun fillSpinners() { + binding.fromLanguageSpinner.adapter = ArrayAdapter( + this, + android.R.layout.simple_spinner_dropdown_item, + fromLanguages + ) + binding.toLanguageSpinner.adapter = ArrayAdapter( + this, + android.R.layout.simple_spinner_dropdown_item, + toLanguages + ) + } + companion object { private val TAG = TranslateActivity::class.simpleName private const val FROM_ID = "from" diff --git a/app/src/main/java/com/nextcloud/talk/ui/theme/TalkSpecificViewThemeUtils.kt b/app/src/main/java/com/nextcloud/talk/ui/theme/TalkSpecificViewThemeUtils.kt index 4c69bcda3..93e833f7c 100644 --- a/app/src/main/java/com/nextcloud/talk/ui/theme/TalkSpecificViewThemeUtils.kt +++ b/app/src/main/java/com/nextcloud/talk/ui/theme/TalkSpecificViewThemeUtils.kt @@ -28,7 +28,6 @@ import android.graphics.drawable.Drawable import android.graphics.drawable.LayerDrawable import android.os.Build import android.view.View -import android.view.ViewGroup import android.widget.LinearLayout import android.widget.TextView import androidx.annotation.ColorInt diff --git a/app/src/main/java/com/nextcloud/talk/utils/database/user/CapabilitiesUtilNew.kt b/app/src/main/java/com/nextcloud/talk/utils/database/user/CapabilitiesUtilNew.kt index f88c031fc..d91a4178f 100644 --- a/app/src/main/java/com/nextcloud/talk/utils/database/user/CapabilitiesUtilNew.kt +++ b/app/src/main/java/com/nextcloud/talk/utils/database/user/CapabilitiesUtilNew.kt @@ -210,13 +210,12 @@ object CapabilitiesUtilNew { return false } - fun getLanguages(user: User?) : Any? { - - if(isTranslationsSupported(user)) { - return user!!.capabilities!!.spreedCapability!!.config!!["chat"]!!["translations"] + fun getLanguages(user: User?): Any? { + return if (isTranslationsSupported(user)) { + user!!.capabilities!!.spreedCapability!!.config!!["chat"]!!["translations"] + } else { + null } - - return null } const val DEFAULT_CHAT_SIZE = 1000